求100之内的素数问题求解

thesperus 2016-10-21 12:39:27

main()
{ char i[30];
int n=1,s=1,p=1;
for(n;n<=100;n++)
for(s;s<=9;s++)
{for(p;p<=30;p++)
{n%s==0;
i[p]=n;}
}
printf("shushu is %i[30]",i[30]) ;
getch();
}


请问这段代码有什么问题
为什么我不能启动呢
...全文
406 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xxx_Mrjie_xxx 2016-10-23
  • 打赏
  • 举报
回复
数组 是从 0开始算的
ck2333 2016-10-23
  • 打赏
  • 举报
回复
第一。数组下标是从0开始,而且最大值应该是n-1,你这里30明显越界了。第二。尽量不要用大于等于或者小于等于这种判断符。(我的老师曾经告诉我的,虽然我也不是很明白为什么)
luo3stone 2016-10-22
  • 打赏
  • 举报
回复
数组下标是从0开始的,i[30]是表示了有i[0]到i[29]这30个元素
ipqtjmqj 2016-10-21
  • 打赏
  • 举报
回复
数组下标是从0开始的,i表示整个数组,i[29]表示数组最后一个元素
赵4老师 2016-10-21
  • 打赏
  • 举报
回复
“多一少一”问题占程序员常犯错误的10%以上! 避免“多一少一”问题的方法之一是将比如<10甚至<5的数代入程序片断,掰手指头心算验证一下程序到底应该写为 x、x-1、x+1中的哪个? <、<=、==、>、>=中的哪个?
paschen 2016-10-21
  • 打赏
  • 举报
回复
printf("shushu is %i[30]",i[30]) ; 你的数组 i 有效索引只是 0 - 29 i[30] 已经越界了

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧