用户在运行时动态输入多个输入
如何在运行时通过c中的用户选择获取多个整数输入。 这里输入的第一行是测试用例的数量。 然后我在这种情况下计算输入数字的总和。
测试用例:
输入
3 1 6 7 2 7 3 4 2 1
输出:
14 16 3
我们可以用这种方式修改 scanf(),以便它可以处理这个动态输入。
我不能将该行作为字符串输入,然后将它们分成数字。
我们可以使用空格和\ n来决定数字,就像我们将字符串作为输入一样作为例子: scanf("%[^\n]",&str);
答案由BLUEPIXY提供了很好的代码。 在这里,我们将输入视为一对。
它将是一对数字和空格,或者它将是一对数字和换行符。
示例: 2 3 4
所以在这个输入中我们成对,比如 – ‘2 ‘,’3
‘和’4
\n
‘。 当我们遇到\n
我们停止无限循环。 这里的代码如下:
#include int main(void){ int n; scanf("%d", &n); while(n--){ int v, sum = 0; while(1){ char ch = 0; scanf("%d%c", &v, &ch); sum += v; if(ch == '\n' || ch == 0) break; } printf("%d\n", sum); } return 0; }
输入:
3 1 6 7 2 7 3 4 2 1
输出:
14 16 3