c语言循环移位 for循环的疑惑

等 级:蝙蝠侠
帖 子:265
专家分:975
依图显示的循环来说,当i%j==0时,就赋值给flag=1,然后退出里层for()循环(原因是在if里面有break)....
等 级:论坛游民
专家分:14
不是太懂&&你说的问题
来 自:代码空间
等 级:论坛游侠
帖 子:282
专家分:124
回复 2楼 爱闹的娃
我的意思是for语句循环为什么不是全部一起运行?for语句不是只要i满足就运行循环语句,这里为什么当i%j==0时才执行flag=1呢?
我只是个演员,还是业余的!!
来 自:代码空间
等 级:论坛游侠
帖 子:282
专家分:124
回复 3楼 痞子宇
就是for语句的循环语句只要i满足条件就全部执行吗?为什么flag=1不是一开始就执行呢??
我只是个演员,还是业余的!!
等 级:蝙蝠侠
帖 子:265
专家分:975
回复 4楼 经哥
for()循环是一当满足i才执行,当执行到(i%j==0)时,它满足if的条件,才执行flag=1、break这两条语句,否则..不执行呗....
来 自:代码空间
等 级:论坛游侠
帖 子:282
专家分:124
回复 6楼 爱闹的娃
哦哦哦,懂了,多谢
我只是个演员,还是业余的!!
版权所有,并保留所有权利。
Powered by , Processed in 0.023930 second(s), 7 queries.
Copyright&, BCCN.NET, All Rights ReservedC语言for的双循环的执行顺序
C语言for的双循环的执行顺序
 int i,j,p,q,s,n,a[11]={127,3,6,28,54,68,87,105,162,18};  for(i=0;i&10;i++) {  p=i;q=a[i];  for(j=i+1;j&10;j++)   if(q&a[j]) {p=j;q=a[j];}   if(p!=i)   {    s=a[i];    a[i]=a[p];    a[p]=s;   }   printf("%d ",a[i]);
这是一个程序的一部分,是来把数组按大到小排起来,但是里面的2个for循环把我弄糊涂了,这程序是对的吗?解释下流程啊。
补充:for循环是平行的吗
补充:最初问题已经解决,靠我自己啊;-)!,为了这正确率,随便问一下啦,答出来就选啊,你们大家是什么时候开始学编程的啊,(可回答初中,高中==,或年龄)还有学了几年啊。
恩,实践最容易说话了。学习年龄不是问题,要上劲而且逻辑清晰就行,上高中接触学一些QB类似的东西。貌似没什么用真正接触C,java还是在大专
的感言:是吗 可是怎么都不全啊 满意答案
1. 外层循环从第一个数开始,刚开始保存此次循环的第一个元素的下标和元素值;
2. 内存循环从第二个数开始,每个数与前一个数进行比较,如果出现“顺序”,则记录当前元素的下标和元素值。当当前循环进行完的时候,判断外层循环开始记录的下标和循环出现顺序的元素的下标值是否相等:
如果相等,则不需要交换位置;否则,调换两个元素的位置。
3. 之后两层循环都后移一位,重复上面的动作,直到比较结束。
明白!但是这程序求的是中对大的值,而每次内循环却都能记录一个值,要是数组里后面有2个比头个数要大那要怎么输出啊
两个比第一个数大的,那就把两者中较大的一个放到第一个元素的位置了!
哎,那2个if是第二个for的循环体吧,也就是说这个循环这能判断头个数与第二,第三的大系,这样不就无法判断第二与第三的大小关系了吗
好像有点误解了,无视我刚才说的吧。
哎,碰见比第一个数大的,就交换下标和元素值,if条件成立,执行了两条语句,明白吗?
的感言:怎么搞的 好好 看看我的提问啊
其他回答 (2)
程序是对的。用的是最简单的冒泡法 。呵呵,很基础很基础的问题哦 。 你可以自己在图纸上演算下过程,这样比我跟你讲的直观。
最后一行 printf("%d ",a[i]); 后面应该有个“}”才对
这个程序是对的,
在a[11]这个数组里只有a[0]~a[9]这10个元素
第一个for循环与第二个for循环构成嵌套,第一次循环结束找出a[0]~a[9]里最大的数,
第二次结束找出a[1~a[9]]里最大的数,第三次找出a[2]~a[9]里最大的数,……
这样依次类推,其实就是一个选择排序!
程序中变量 p q 交替记录最大数的下标和最大数的值。
这并不是一个难懂的程序,有一定基础的应该都能弄懂的。或者你回去看看有关选择排序的程序实例。
这只是大致的内容,别的不需要多讲应该可以看明白的。
&
初一受老师熏陶……
等待您来回答
编程领域专家在精确延时的计算当中,最容易让人忽略的是计算循环外场合,这部分对程序不会造成..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
FOR循环实现C语言精确延时
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口c语言 for循环的疑惑_百度知道
提问者采纳
for循环里面的++n啊,26+1=27
提问者评价
谢谢,忘了n是条件变量了!
其他类似问题
for循环的相关知识
其他2条回答
n可能为全局变量,问题不在这儿,找全程序的问题。
等待您来回答
您可能关注的推广回答者:
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 c语言循环移位 的文章

 

随机推荐