发 帖  
原厂入驻New
[问答]

程序执行顺序问题

393 程序
分享
# include <stdio.h>
int main(void)
{
do
{
    int i,j;
    for (i=0; i<4; i++)
    {
        printf("a");
        for (j=0; j<3; j++)
        {
            printf("b");
        }
    }
    return 0;
}while(1);
}

我认为的程序走的顺序是:第一次进入do while循环里,走一次for循环,输出的是abbbabbbabbbabbb,然后判断while表达式真假,因为是while(1),按理说应该继续输出abbbabbbabbbabbb,继续循环,但是循环只走了一次,我的逻辑是哪里出错了,请指出,谢谢
0
2020-10-30 13:32:44   评论 分享淘帖 邀请回答
5个回答
关于循环的程序我还有一个问题,图在下方
整个程序在板子上运行时,在两层的for循环语句里,每次第一层走第一遍没问题,第二层走完十次,再次进行第一层进行判断循环时,第二层循环有时候走一次,有时候走两次,或者不走,然后整个程序就停住了,这是什么原因

嵌套for循环

嵌套for循环

程序主要运行次序

程序主要运行次序
2020-10-30 17:27:37 1 评论

举报

1 条评论
  • uy
    2020-11-2 15:02

    当我去掉循环里的延时函数,以及定义pulse里面的延时函数是,就没有这个问题了,但是我又需要延时操作,要怎么改程序

你执行完第一次就直接return 0了,while语句条件不成立,自然就执行一次
最佳答案
2020-10-30 13:32:45 1 评论

举报

1 条评论
请问下你的return语句是干啥用的?
2020-10-30 14:11:39 评论

举报

你这return整个函数就停了
2020-11-6 20:40:05 评论

举报

确实 是 遇到 return 了 ...
2020-11-9 15:47:39 评论

举报

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
我要提问
关闭

站长推荐 上一条 /9 下一条

快速回复 返回顶部 返回列表