在编写程序时,我开始是把**scanf_s("%lf", &s);放在循环外面,结果输出的答案不论几个,仅为一个字母的循环。后来我将scanf_s("%lf", &s);**放在循环里面,程序恢复正常。
同学猜想前者是因为程序中只有输入的第一个数值在不断循环,后面的数值不能进入循环。请问这是什么原理呢?谢谢!
#include
int main()
{
int n, i;
double s;
scanf_s("%d", &n);
printf("%d", n);
for (i = 1; i <= n; i++) {
scanf_s("%lf", &s);
if (s >= 90.0)
printf("A");
else if (s >= 80.0)
printf("B");
放在循环里才能不断进行scanf输入字符啊。放在循环外就输入了一次,当然一直输出同样的字符了
不知道你这个问题是否已经解决, 如果还没有解决的话: