問題 : 小さい数値を入力から出力に書き換えます。数値 42 を読み取った後、入力処理を停止します。入力時のすべての数値は、1 桁または 2 桁の整数です。
例
入力: 1 2 88 42 99
出力: 1 2 88
私の解決策:
#include<stdio.h>
int main()
{
int i;
scanf("%d",&i);
while(i!=42)
{
printf("%d",i);
scanf("%d",&i);
}
return 0;
}
正解:
#include <stdio.h>
int main( void ) {
int i;
while( 1 ) {
scanf( "%d", &i );
if( i == 42 ) break;
printf( "%d\n", i );
}
return 0;
}
入力が 42 の場合、両方のプログラムが終了します。2 つの違いは何ですか?
編集:これはcodereview.stackexchange.comに投稿する必要があることに気付きました。管理者は必要なことをしてください。