gpt4 book ai didi

c - 如何检查输入结束? C、找到42

转载 作者:太空宇宙 更新时间:2023-11-04 07:21:50 24 4
gpt4 key购买 nike

这就是问题所在:
您的程序是使用蛮力方法来找到生命、宇宙和一切事物的答案。更准确地说......从输入到输出重写小数字。读入数字42后停止处理输入。输入的所有数字都是一位或两位数的整数。

输入:
1
2
88
42
99

我的第一个代码不起作用:

while( scanf("%d\n", &n) != 42 ){
printf("%d\n",n);
}

第二个代码,带 for 循环,有效,但有一个测试用例,其中没有数字 42,因此它返回 TLE,我如何检查输入结束?

for(i=1;i>0;i++){
scanf("%d\n",&n);
if(n!=42 ){ /* end of input??? */
printf("%d\n",n);
}
else {
break;
}
}

为什么 while 循环不能正常工作?

最佳答案

scanf 返回扫描的字符数,而不是结果。

因此,编写while循环如下:

scanf("%d", &n);
while( n != 42 ){
printf("%d\n",n);
scanf("%d", &n);
}

关于c - 如何检查输入结束? C、找到42,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21063560/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com