为什么我不能在这里命令时中断?
Why can't I break while command here?
我正在用C 编写一个在线购物代码,但我不知道为什么我的代码进入了一个无限循环并且块中的scanf
函数不起作用。即使我添加 if (b <= a){break;}
。我的朋友在 Linux 上尝试 运行 它并得到了不同的结果。它只是根据输入多次写“保证金不足请添加”。这是我的代码;
int a;
int b = 100;
int add;
scanf("%d",&a);
while(a < b)
{
printf("unsiffcent margin please add");
scanf("add%d",&add);
a = a + add;
}
我尝试添加 if(b <= a){break;}
但没有用。我想要一个代码,要求我添加到一个数字,直到数字大于一个值。
scanf("%d",&add);
将解决您的问题。
您的代码有错误:
while(a\<b)
会导致语法错误。你可能是说 while (a <= b)
.
a
没有在您的代码中赋值。
这是你想要做的:
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
int max = 100, a = 0, add = 0;
printf("Enter a number: ");
scanf("%d", &a);
while(a <= max) {
printf("Unsufficient margin please add another number: ");
scanf("%d", &add);
a += add;
}
printf("a = %d\n", a);
}
您必须提供提示消息,以便用户知道他应该做某事。更好的是,给你的变量起有意义的名字。
我正在用C 编写一个在线购物代码,但我不知道为什么我的代码进入了一个无限循环并且块中的scanf
函数不起作用。即使我添加 if (b <= a){break;}
。我的朋友在 Linux 上尝试 运行 它并得到了不同的结果。它只是根据输入多次写“保证金不足请添加”。这是我的代码;
int a;
int b = 100;
int add;
scanf("%d",&a);
while(a < b)
{
printf("unsiffcent margin please add");
scanf("add%d",&add);
a = a + add;
}
我尝试添加 if(b <= a){break;}
但没有用。我想要一个代码,要求我添加到一个数字,直到数字大于一个值。
scanf("%d",&add);
将解决您的问题。
您的代码有错误:
while(a\<b)
会导致语法错误。你可能是说while (a <= b)
.a
没有在您的代码中赋值。
这是你想要做的:
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
int max = 100, a = 0, add = 0;
printf("Enter a number: ");
scanf("%d", &a);
while(a <= max) {
printf("Unsufficient margin please add another number: ");
scanf("%d", &add);
a += add;
}
printf("a = %d\n", a);
}
您必须提供提示消息,以便用户知道他应该做某事。更好的是,给你的变量起有意义的名字。