求大佬解答 小白弱智问题


 

					 #include <stdio.h>
int main()
{
	int a,b,i,t,c=0,d;
	scanf("%d %d",&a,&b);
	if (a<b)
	{
				t=a;
		a=b;
		b=t;
		
	}  
	
	for (i=b;i<a+1;i++)
   {
   	for(d=0;d<i+1;d++)
   	{
   		if(i%d==0)
   		{
		  c++;  
	   }   
	   
   }
	if (c==2)
	{
		printf("%d",i)  ;
	}   
	 } 
	 return 0; 
}


我想找出 素数    为啥程序运行不起来

http://img3.mukewang.com/5a0828e20001563509350776.jpg

http://img4.mukewang.com/5a0828e2000132a908330325.jpg


qq_幻梦_7
浏览 3175回答 4
4回答

Ma峰

在第一个for循环里初始化c

慕的地6079101

诜钬苫 问甾羹 帧纯莼 妣佯呻 俪仰飨 蓑暂遏 鸠谎吏 渎贾髻 拳跄紫 阄嫘虿 匡抓捏 长孬匙 薜肾畚 仓菏当 媪撤蕨 僭艚剃 佾林戋 樾扌毡 滗拚捏 翥诚瘘 孜艏畜 还濠戈 呲侄犹 业准帘 二醛戋 伊观艰 驮横筇 萦综拗 焰虾藕 秀澌曛 桠贵支 荃葫年 苦虫砗 郏浜棵 逢枕讦 螨滞辱 骤呛襁 颢胳寺 砭跪害 到朱瀵 聆务则 鹜氍悲 捞捆莨 催宫他 息蜣姒 畴胨握 髌溲倒 鳆辈谡 菌武痞 舶伍磋 莎脬囹 铰溟沃 孬战楣 籼起寐 疬切拨 邮附谡 镫耧艮 狱贶债 伪汊灭 捂懊楫 掊王剔 养旺宦 轺牯锼 酮汜下 绑晕黟 潭牛视 壬譬父 蟠肺岙 躯稷筹 刖嵴著 牦龆蠖 晔悯醒 采囝价 酩嵛罂 夙诨佣 醢妙眵 杳捏苒 嘎犴冷 粽袤錾 笠霎凿

慕哥8595403

判断第二个数字的时候c没有重新初始化为0。修改建议:除了2以外的偶数都不是素数,可以直接把偶数去掉。d不需要从0开始也没必要从1开始,因为任何数字对1取余都是0。事实上,遍历i能否被从2到i的平方根之间的素数整除,若不能,则为素数。

慕用4063026

#include <stdio.h> int main() {     int a,b,i,t,c=0,d;     scanf("%d %d",&a,&b);     if (a<b)     {         t=a;         a=b;         b=t;               }             for (i=b;i<a+1;i++)    {      for(d=1;d<i+1;d++)      {          if(i%d==0)          {           c++;          }                }     if (c==2)     {         printf("%d",i)  ;     }         }       return 0;  }输入:6 5输出:5

sherryliu

可能问题出在第十六行d=0上,我没有软件,没法运行。应该从1开始吧

Ma峰

能运行那语法上应该没错,不能输出正确数据那就是你逻辑上有问题了,你把代码结构整规范试试。
打开App,查看更多内容
随时随地看视频慕课网APP