永发信息网

c语言:该函数的 功能是:将大于整数 m 且紧靠 m 的 k 个素数存入 xx 所指的数 组中。

答案:1  悬赏:40  手机版
解决时间 2021-01-10 11:10
c语言:该函数的 功能是:将大于整数 m 且紧靠 m 的 k 个素数存入 xx 所指的数 组中。
最佳答案
for(i=m+1;i
因为是比m大的,所以i的起始值是 m+ 1。 给你举个例子吧:
假设是将大于整数 4 的5个素数存入xx数组中,也即是m = 4,k = 5进到fun函数中的实现方式就是:
i = 4 + 1 = 5的时候, 执行到 i%j!=0这一句就是 5 % 2 == 1,flag = 1; 5 % 3 = 2,flag = 1; 5 % 4= 1,flag = 1 ;因为j < i, 所以执行到这里就结束了,然后这时候flag = 1,然后到判断if(flag==1&&j>=i)这一句,第一个条件flag==1成立, 因为j = 5(这里不懂就追问),所以有 j == i,所以这个语句成立,执行i
f(k>=0)
{
xx[g++]=i; k--;
}
这时候k的值为5(最开始设置的),所以成立,执行将当前素数 i 存入数组xx中,并且让k --,k减一的效果是,总共存五个,现在存了一个,只剩下四个。

然后继续循环 6,7,8,9(解析方式一样).。。。。。一直到能存入五个素数为止。
不懂继续追问!追问为什么j=5?flag=1和flag==1是什么意思?为什么要在开头定义flag=1?有什么作用追答基础确实该好好打打了。
for循环执行到了最后,会有 j = 4, 然后会执行 j++, 然后判断 j < i, 虽然不成立,但是这时候 j 已经变成了5 。
flag=1是给flag赋值为1,flag==1是判断当前flag的值是否等于1,在开头定义flag = 1是初始化,这个没有什么作用,你改为0也可以。追问为什么i要从m+1到m*m循环?追答我不是说了吗,因为题目要求将大于整数 m 且紧靠 m 的 k 个素数,大于整数m自然是要从m + 1开始循环,至于m*m这个就是你自己定了,只要能满足找出k个素数就可以!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
FIFA12下了怎么玩?
合肥哪个汽车站有到古城镇的汽车(听说到岱山
今天看到一户人家两扇大门上都竖着贴了张白纸
单选题下列各句中,没有语病的一句是A.微博是
4S店没换新的东西怎么办
x²-150x+4400=0求因式分解的方法
怎么寄快递?
上胸围120下胸围96是多少罩杯
求解方程组x+y=17 xa:ya=3:4
作文《温柔的旅程》600字
液压挺住与普通挺住相比有何优点?
这是什么,鸡肚子里的
哪种白醋不会那么酸
台州博物馆作文 500字
李克勤的月光小夜曲歌词。
推荐资讯
人教版三年级下册数学列式计算用列竖式吗
请问我左脚脚指指甲盖偶尔会疼是怎么回事?知
泰国罗勒可以吃吗
广州南站离 番禺钟村有几公里
你觉得贝高尔乐是不是真的?
装修用到假水泥怎么办
丈夫勃起障碍,我该怎么办啊?
武宣县仙城中学地址在哪,我要去那里办事,
《鬼娃の姬》txt全集下载
珀妍诗臻至美肌爽肤水能改善什么问题?
多肉百合莉莉与腊牡丹的区别
华硕p5l2主板显卡是什么接口
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?