c - 循环不会运行多次

标签 c

输出应打印语句“案例 #(N):我将成为一个好 child 。”取决于用户输入的一定次数。它应该只打印 N 的素数。这是最新的尝试。

 #include<stdio.h> 

 int main(){

 int primeNum;
 int primeCount;
 int primeCheck;
 int caseCount=1;
 int caseCheck;

 scanf("%d", &caseCheck);//gets number of cases

 do {
 scanf("%d", &primeNum);
 primeCheck = 0;
      if (primeNum<=1)
 {
 caseCount++;
 }
 for (primeCount=2 ; primeCount<=primeNum/2 ; primeCount++)//checks if number is prime
 {
      if ((primeNum%primeCount) == 0)//checks if number is not prime
      {
      primeCheck=1;
      }
 }
 if (primeCheck==0)
      printf("Case #%d: I will become a good boy.\n", caseCount);//prints if number is prime
 } while (caseCount=caseCheck);//while case counter does not exceed number of cases
 return(0);}`

当输出为 2 [enter] 4 [enter] 2 时,这段代码的结果是“案例#2:我会成为一个好 child ”。为什么它不打印多次并从数字 2 开始?

最佳答案

只需将 while (caseCount=caseCheck); 更改为 while (caseCount==caseCheck); 您的代码的问题是您没有检查条件。您只是将值重新分配给变量。

关于c - 循环不会运行多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52802357/

相关文章:

我可以在 C 中将 0.16、0.32 等正确转换为整数(16、32 等)吗?

c - unsigned int、float 数据类型和乘法的奇怪之处

c - 具有该结构输入类型的结构中的函数

c - 双向链表 - 段错误

c++ - 能不能用g++编译代码用Solaris Studio的Performance Analyser做性能分析?

c - 如何获取文本文件c中最常出现的字符串

c - 是否有类似 "Hello, World"GNU 的库示例项目?

c - 使用 openGL 和/或 X11 的截图

c - malloc 分配的指针的大小

c - 用 Valgrind 运行单元测试是不是有点矫枉过正?