例如,我想知道如何在使用变量时使用循环。如果标准输入来自文件,它应该循环直到遇到“*”。只要它获得 a 的价值,它就应该迭代。
while(a!='*')
{
scanf("%d",&a);
...
....
....
....
}
如果你想立即终止你阅读 a '*'
,怎么样
for (;;) {
scanf("%d", &a);
if (a == '*') {
break;
}
....
}
或者,如果'*'
是您应该处理的最后一个值,您可以使用
do {
scanf("%d", &a);
....
} while (a != '*');
请注意,我接受了 WhozCraig 和 Armin 的建议,并更改了您的scanf
线路以传递a
. 如果a
已经是指针类型,则比较应该更改以取消引用它 - 例如*a == '*'
. (在后一种情况下,您还需要确保分配了a
指向的内存。)
怎么样:
char a;
while (scanf("%c", &a) == 1 && a != '*')
{
}
将格式说明符更改为%c
,传入地址a
并检查返回值scanf()
以确保char
读取有效。
也许您想改用 do { } while 循环。