我正在编写一个算法,我最多接受 10 个输入。允许用户输入任意数量的输入。问题是我不能告诉用户最后输入你必须输入 -1 或其他任何东西。我需要找到一种机制来做到这一点。有人对此有什么建议吗?
问问题
178 次
2 回答
1
该scanf()
函数返回它成功写入的对象数。使用该值!
int n, a[10];
n = scanf("%d%d%d%d%d%d%d%d%d%d", a+0, a+1, a+2, a+3, a+4, a+5, a+6, a+7, a+8, a+9);
printf("You entered %d values\n", n);
请注意,对于特定代码段,用户必须使用一些错误值(如“42 13 -100 boo”)或 EOF(“42 13 -100 CTRL+D CTRL+D”)表示输入结束。只需键入 ENTER 没有任何效果:"%d"
转换规范会忽略它们。
于 2012-08-09T13:09:31.600 回答
0
伪代码:
get count limit
saturate to 10
start loop (for count-limit times)
scanf
put value to array
end loop
或者:
start loop
scanf
put value to array
increment counter
check if counter==10 or input is blank then quit
end loop
于 2012-08-09T13:06:09.717 回答