IT
มัธยมปลาย
เคลียร์แล้ว

c言語の問題です。
このプログラムの場合secondが2番目に大きい数というのは書かなくていいんでしょうか?同じようにmaxというのは自動的に1番大きい数を指すんでしょうか?

入力された値で2番目に大きい値を出力す るプログラムを完成させよ 1 #include <stdio.h> 2 3 int main(void){ 4 int i; int max = 0, second = 0; int n; 5 6 7 8 for(i = 0; i< 10; i++) { scanf("%d", &n); 9 10 11 // 2番目に大きい値を超えたとき if(n > second) second = n; // 最大値を超えたとき if(n > max){ second = max; 12 13 14 15 16 17 18 max = n; 19 20 21 22 printf("2番目に大きい数字は%d\n", second); 23 24 return 0; 25 } 26 レ

คำตอบ

✨ คำตอบที่ดีที่สุด ✨

負の値だけを与えてしまうとmax=second=0で2番目に大きい数にならないと思います。
このプログラムなら自動的にmaxは1番大きい数を出力しsecondは2番目に大きい数を出力すると思います。

あいな

なるほど。丁寧な解説ありがとうございます!!

แสดงความคิดเห็น
ข้อสงสัยของคุณเคลียร์แล้วหรือยัง?

เมื่อดูคำถามนี้แล้ว
ก็จะเจอคำถามเหล่านี้ด้วย😉