10個の数字を連続して入力し、10個の数字のうち2つの最大値を見つけるプログラムを作成しますか? (ifとloopのみを使用)最大と2番目に大きな数字を見つける
誰でも私が問題の解決に手伝ってくれますか?私はしようとしましたが、それは正しくありませんでした。 2番目に大きい番号を列挙することはできません。どんな助けにも感謝します。
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int counter = 0, number, largest = 0,largest2=0;
for (counter = 1; counter <= 10; counter++) {
printf("Enter number (%d): ", counter);
scanf_s("%d", &number);
if (number > largest)
{
largest = number;
}
else
{
if (number > largest2)
largest2 = number;
}
}
printf("The largest number is %d\n", largest);
printf("The second largest number is %d\n", largest2);
system("pause");
return 0;
}
この宿題ですか? hehehe –
btwあなたが最大のinitに "INT_MIN"を使用する必要があります。もし入力として-10、-11、..を書いたらどうなりますか? 0からのinitから、最大値として0が得られますが、それは真ではありません:) constanctsを見てください。 https://en.wikibooks.org/wiki/C_Programming/C_Reference/limits.h – xxxvodnikxxx
繰り返し値がどのように処理されると思いますか?たとえば、「9 9 10 10 10 10 10 10 10 10 10」という入力に対してどの出力を期待していますか?定義に応じて、2番目に大きな値は9または10のいずれかです。 – Peter