創作內容

0 GP

基礎-練習題目 12

作者:麋瑀│2022-04-05 12:09:10│巴幣:0│人氣:43
查詢上限內最大數字
●  輸入 10 個整數後, 輸入要查詢的數字後,顯示輸入的整數中最接近的一個
    ○ 輸入 0 則結束

(所有數字必須大於等於 0 )
# include <stdio.h>

  int main( )
{   
  int i , n [10] , q ;
    for ( i = 1 ; i <= 10 ; i++ )
  {
    scanf_s ("%d", &n [ i -1]) ;
  }
     while (1)
   {
     int max = -1 ;  // i = -1 , 確保比0小
     printf ("Q :") ;
     scanf_s ("%d", &q) ;
       if ( q == 0 )
     {
       break ;
     }
        for ( i = 0 ; i < 10 ; i++ )
      {
          if ( n [ i ] <= q && n [ i ] > max ) //   n [ i ] 當中i , ( i = -1 ) , 確保比0小
        {
          max = n [ i ] ;
        }
      }
          if ( max != -1 ) // 數字等於或小於 -1 停止
        {
          printf ("%d n", max)
        }
   }

  return 0 ;
}

替代方案 - (所有數字都能做)
# include <stdio.h>

  int main( )
{   
  int i , n [10] , q ;
    for ( i = 1 ; i <= 10 ; i++ )
  {
    scanf_s ("%d", &n [ i -1]) ;
  }
     while (1)
   {
     int max_i = -1 ; // max_i (目前代表最大元素的索引號)
     printf ("Q :") ;
     scanf_s ("%d", &q) ;
       if ( q == 0 )
     {
       break ;
     }
        for ( i = 0 ; i < 10 ; i++ )
      {
          if ( n [ i ] <= q && ( max_i == -1 || n [ i ] > n [ max_i ] ) )
        {
          max_i = i  ;
        }
      }
          if ( max_i != -1 )
        {
          printf ("%d n", n [ max_i ] )
        }
   }

  return 0 ;
}

引用網址:https://home.gamer.com.tw/TrackBack.php?sn=5427146
All rights reserved. 版權所有,保留一切權利

相關創作

留言共 0 篇留言

我要留言提醒:您尚未登入,請先登入再留言

喜歡★k940714675 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:ESC...

追蹤私訊切換新版閱覽

作品資料夾

ilikemousse好朋友們
小屋新繪圖,歡迎大家來我小屋晃晃參觀喔~~~也歡迎交流看更多我要大聲說昨天20:27


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】