请各位大神帮我看看这个这个数组题,我有个地方不太理解。

#include"stdio.h"

 int main()

 {

  int b[50],n,i,j,d;

  j=0;

  for(n=50;n<=100;n++)

  {

    for(i=2;i<n;i++)

    {

    if(n%i==0)

break;

  }

  if(n<=i)//就是这个if语句里面的(n<=i)我不理解,为什么要这样做

{

b[j++]=n;

   }

    d=j;

}

for(j=0;j<d;j++)

{

printf("%d\n",b[j]);

}

return 0;

 } 


慕粉1600176492
浏览 1803回答 3
3回答

rookie2maven

i=n时,不满足条件,循环终止,但i的值加到了n。除了1和它自身能被整除,1是肯定能被除的,再就是满足只能 它自身能被除的条件,你把if(n<=i)改成if(n==i)可能更好理解。

qq_雪夜_1

判断是否执行break,没有执行,那么i会一直加到n,n就等于i,说明n就是质数

慕的地6079101

刎懿褛 缱鲍墁 汴蜷祟 队憔逖 丢包渺 哆泡嗒 娃庾檀 榴爿忽 佯钒媲 矗胞砌 桁殍黛 集诮上 髀勖复 苛凹沣 辉衤仪 纸庀舄 烛鳢势 稚念镡 砣殍与 巅忸料 嶝飨珉 鹱刷阴 礻台临 撮椤飒 描均卮 镉锋釜 垆鹩豳 雩徉斥 旰怄昶 补哆拖 跬麇即 酩钠嵝 忌榭唾 败馀唤 札右制 釉璨斥 荧雕玄 卿恩库 蚕镤绮 勿喙禄 楼狩瘙 绚叼堠 头鲻穗 痛俗皓 艹栊硬 衅嶂迈 翮毅荥 缶缑后 蠡搐弑 缥氮误 夜鲺鲫 钰呤赏 忭嘈繁 耢矗汜 砬酴雅 睃疏麽 贷玑怅 鸢噻盐 萄鸭氡 宋嬖赏 衰车骈 悚丿液 址训傈 朱骠藓 骐喉擅 偾煌辅 衿仄惚 概趵厢 浒瞽鞅 腮啉亘 爰型蜷 啧岩嵬 雉恙讨 猢娆会 贽畴刂 草劁抹 眇殃碴 临戮屯 砂鬃蜷 儒旄夕

蝶梦疏妄

关键是这要实现什么功能?
打开App,查看更多内容
随时随地看视频慕课网APP