【发布时间】:2015-08-31 13:49:48
【问题描述】:
我本来打算写一个程序来打印星星的数量。示例
输入数字:12 11 9 8 ^D
12 | ************
11 | ***********
9 | *********
8 | ********
#include <stdio.h>
int main(int argc, char *argv[]) {
int a;
printf("enter values \n");
while (scanf("%d ", &a) != EOF) {
printf("%d |", a);
for (int j = 1; j<= a; j++) {
printf("*");
}
printf("\n");
}
}
使用我的代码,它会打印出正确的输出,但不会打印出我输入的最后一个值的星数。就像上面的例子一样,它不会打印出 8 颗星,直到我再次按回车键或按 ^D。我想知道我的代码是否有问题。 ?
【问题讨论】:
-
在上面的例子中,它什么时候打印每个数字相对于你输入的行?
-
你应该先看看这个...stackoverflow.com/questions/1516122/…
-
尝试
scanf("%d", &a)而不是scanf("%d ", &a)
标签: c algorithm printf getchar