我试图为一个类编写一个简单的C程序,其中一项要求是我必须对所有输入和输出使用scanf/ printf。我的问题是为什么我scanf的主程序中的for循环后被跳过而程序刚刚终止。
这是我的代码
#include <stdio.h>
void main() {
int userValue;
int x;
char c;
printf("Enter a number : ");
scanf("%d", &userValue);
printf("The odd prime values are:\n");
for (x = 3; x <= userValue; x = x + 2) {
int a;
a = isPrime(x);
if (a = 1) {
printf("%d is an odd prime\n", x);
}
}
printf("hit anything to terminate...");
scanf("%c", &c);
}
int isPrime(int number) {
int i;
for (i = 2; i < number; i++) {
if (number % i == 0 && i != number)
return 0;
}
return 1;
}
我可以通过scanf在第一个之后添加另一个相同项来“修复”它,但是我宁愿只使用一个。
潇潇雨雨
相关分类