我正在尝试为一个类制作一个简单的 C 程序,其中一个要求是我需要对所有输入和输出使用scanf
/ printf
。我的问题是为什么我scanf
在 main 中的 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
,但我更愿意只使用一个。