美文网首页
电商专业学习嵌入式软件开发第十九天

电商专业学习嵌入式软件开发第十九天

作者: 雨打梨花闭门寒 | 来源:发表于2017-02-10 17:48 被阅读0次
    • 预科第八天

    今天老师将循环讲完了,条件流程switch-case补充到了昨天的笔记中,已经更新.老师顺便将数组开了个头,讲了一点基础。循环这一节单个循环逻辑拿出来可以理解,但是让自己写就写不出来。

    ③for循环
    for(表达式1;表达式2;表达式3)
    {}

    规则:先计算表达式1,表达式1有且只执行一次,再去判断条件(表达式2)是否成立,如果成立就去运行{}里面的代码;
    当{}里面的所有代码都执行完成之后再去执行表达式3,执行完表达式3之后再去判断条件,直到不成立,就执行{}下面的代码。

    #incude<stdio.h>
    int main()
    {
      //计算1~100的和
        int i=1,sum=0;
        for (;i<=100;)
        {
            sum=sum+i;
            i++;
        }
        printf("i=%d\nsum=%d\n",i,sum);
      return 0;
    }
    

    for循环注意点:
    1)表达式1和表达式3可以省略,如果说表达式2也省略,就相当于一个死循环
    2)2个分号不可以省略

    死循环有哪些写法?
    1)for(;;)
    {}
    2)while(1)
    {}

    1. do
      {
      }while(1);
    • while和for后面加不加分号?
      1)正常写法:while和for不加,do...while加
      2)特殊用法:在{}里面如果没有代码可以执行,while(条件);
      for(表达式1;表达式2;表达式3);do...while还是要加分号

    • break和continue使用情况:
      1)break:switch-case,循环
      2)continue:循环

    #include<stdio.h>
    int main()
    {
    /*
         break
         从键盘输入一串字符,计算有效字符的个数;
         有效字符指的是空格前面的字符
         zhang san\n  5
         hello\n   5
         */
        /*
         输入缓存流:zhang san\n
         用while(判断字符是'\n'),
         如果拿出来的字符是空格,就跳出去,不进行计数
         不是空格,就计数
         */
        char ch;
        int count=0;
        while((ch=getchar())!='\n')//判断字符是否输入结束的标志
        {
            if(ch==' ')
            {
                break;
            }
            count++;
        }
        printf("count=%d\n",count);
      return 0;
    }
    

    break注意点:
    1)break是跳出switch语句和循环语句的,当执行break语句的时候,break下面的代码将不会被执行,继而执行循环或switch下面的语句
    2)break是跳出最近的循环或者switch

    #include<stdio.h>
    int main()
    {
         //1~100打印所有的数据,跳过个位为3的数
        int i=0;
        while (i<=99)
        {
            i++;
            if(i%10==3)
            {
                continue;
            }
            printf("%d  ",i);
        }
      return 0;
    }
    

    continue的注意点:
    1)continue是跳出循环当中的一次循环,不会跳出整个循环,
    当执行continue语句时,continue下面的代码不会被执行,继而再去判断下一次条件是否成立
    2)continue是跳出最近的循环当中的一次循环

    注意在与for连用的时候:碰到continue语句,continue下面的语句不会被执行,但是表达式3还是会被执行

    for(表达式1;表达式2;表达式3)
    {
        if()
        {
            continue;
        }
        printf("======\n");
    }
    

    printf不一定每次都能正确运行成功,解决方法:
    在printf后加\n,\n的作用是强制刷新输出缓存流

    在编程当中实在发现不了解决题目的答案,往往标志位flag能解决一切小问题,切记标志位不要太多

    数组就是存储多个同种类型的变量集合
    数组的定义
    int array[7];
    数组的初始化,数组是从0位置开始
    1.int array1[4]={1,2,3,4};
    2.如果后面的值个数不足,用0补全
    int array2[4]={1,2};//{1,2,0,0}
    3.int array3['a']={0};
    4.int array4[4]={[3]=3,[2]=2};
    5.如果数组大小没有指定,那么个数根据后面的数据决定
    int array5[]={1,2,3,4};

    相关文章

      网友评论

          本文标题:电商专业学习嵌入式软件开发第十九天

          本文链接:https://www.haomeiwen.com/subject/wbzgittx.html