#include "stdio.h" void main() { int i,j; for(i = 101 ; i <= 200 ; i++ ) { for(j = 2 ; j < i ; j++) { if(i % j == 0) //只要除到一个数让 i 能被整除就跳出该循环。 { break; } else { if( j == i-1 ) //除完最后一个数后还不跳出循环,就可以判断该数为素数。 { printf("%d ",i); } } } } } 为什么运行过后,显示break不在循环内?
else 少了e
#include <stdio.h>
int main(){
int a=0; // 素数的个数
int num=0; // 输入的整数
printf("输入一个整数:");
scanf("%d",&num);
for(int i=2;i<num;i++){
if(num%i==0){
a++; // 素数个数加1
}
}
if(a==0){
printf("%d是素数。\n", num);
}else{
printf("%d不是素数。\n", num);
}
return 0;
}
参考一下,如有 帮助,望采纳,谢谢
代码如下:{如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢}。
#include "stdio.h"
void main() {
int i, j;
for (i = 100; i <= 200; i++) {
for (j = 2; j < i; j++) {
if (i % j == 0) //只要除到一个数让 i 能被整除就跳出该循环。
{
break;
}
else
{
if (j == i - 1) //除完最后一个数后还不跳出循环,就可以判断该数为素数。
{
printf("%d ", i);
}
}
}
}
}
逻辑有问题,代码修改如下:
如有帮助,请采纳一下,谢谢。
#include "stdio.h"
void main()
{
int i,j;
for(i = 101 ; i <= 200 ; i++ )
{
for(j = 2 ; j < i ; j++)
{
if(i % j == 0) //只要除到一个数让 i 能被整除就跳出该循环。
{
break;
}
}
if( j == i ) //除完最后一个数后还不跳出循环,就可以判断该数为素数。
{
printf("%d ",i);
}
}
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632