网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月01日漏签0天
c语言吧 关注:798,915贴子:4,357,995
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 7回复贴,共1页
<<返回c语言吧
>0< 加载中...

求教各位大神,为什么会这样

  • 只看楼主
  • 收藏

  • 回复
  • 191217023
  • 便当
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include<stdio.h>
void main()
{
int A,B,x=0,i,n;
A>0&&A<=100000;
B>0&&B<=100000;
A<B;
scanf("%d %d",&A,&B);
for(i=A;i<=B;i++){
for(n=2;n<i;n++){
if(i%n==0)
break;}
x++;}
printf("%d\n",x);
}
求AB区间内的素数个数,各位大神指点一下错误


  • 莱茵火夜
  • 强能力者
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
A>0&&A<=100000;
B>0&&B<=100000;
A<B;
这一坨没产生任何作用


2025-08-01 08:40:12
广告
不感兴趣
开通SVIP免广告
  • 莱茵火夜
  • 强能力者
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
另外,break只会break出本循环,而每当内层循环结束时(不论正常结束还是if语句判断导致结束),x都会自增,所以你的得数肯定等同于A、B间的整数个数


  • 莱茵火夜
  • 强能力者
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
成品是这样:
#include<stdio.h>
main()
{
int A,B,x=0,i,n;
for(;;)
{
scanf("%d %d",&A,&B);
if(A>0&&B>A&&B<100000)//用于判定0<A<B<100000这个前提条件
{
break;
}
else
printf("不满足0<A<B<100000的条件");
}
for(i=A;i<=B;i++)
{
for(n=2;n<i;n++)
{
if(i%n==0)//鉴于这个算法中的每个数for循环后面的x++必然会执行,所以这里判定将非质数都刨去
{
x--;
break;
}
}
x++;
}
printf("%d\n",x);
}


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 7回复贴,共1页
<<返回c语言吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示