zoukankan      html  css  js  c++  java
  • c语言for循环等语句详解

    循环结构有:

    1. goto语句和if语句构成循环
    
    2.while语句
    
    3.do-while语句
    
    4.for语句

    goto语句

    goto语句是一种无条件转移语句, 与Basic中的goto语句相似。goto语句的使用格式为:

    goto语句标号;

    其中标号是一个有效的标识符,这个标识符加上一个":"一起出现在函数内某处, 执行goto语句后,程序将跳转到该标号处并执行其后的语句。另外标号必须与goto语句同处于一个函数中, 但可以不在一个循环层中。通常goto语句与if条件语句连用, 当满足某一条件时, 程序跳到标号处运行。

    但是注意:

    goto语句通常不用, 主要因为他将使程序层次不清, 且不易读, 但在多层嵌套退出时,用goto语句比较合理。

    void main()
    {
        int i=1, sum=0;
        loop: if (i<=100)
        {
            sum += i;
            i++;
            goto loop;
        }
        printf("sum 等于%d
    ", sum);
    }

    while语句:

    void main()
    {
        int i=1, sum=0;
        while(i<=100)
        {
            sum += i;
            i ++;
        }
        printf("%d", sum);
    }

    注意一点:如果while (i<=100)这里没有{}, 那么则条件满足, 执行sum +=i, 进入死循环

    do-while 语句:

    do-while 语句的一般形式为:

    这个循环与while循环的不同在于:先执行循环中的语句,然后在判断表达式是否

    为真。因此,do-while语句至少执行一次循环语句。

    do-while里面while要加";"注意

    void main()
    {
        int i=1, sum=0;
        do
        {
            sum += i;
            i ++;
        }
        while (i<=100);
        printf("%d", sum);
    }

    while与do-while的区别

    do-while里面while要加";"注意,而while不用

     

    for循环

    for循环格式一般为:

    注意第三个表达式没有分号啊
    for (表达式1;表达式2;表达式3)语句   或
    for (表达式1;表达式2;表达式3)  注意第三个表达式没有分号啊
    {
      ....; }

    执行过程:

    1) 先求解表达式1;

    2)求表达式2, 若为真, 则执行下面第三部;

      若为假, 则结束循环, 转到第5部。

    3)求解表达式3;

    4)转回上面第2步继续执行

    5)循环结束

    void main()
    {
        int i, sum=0, b=2;
        for (i=1;i<=10 &&b>1;i++)
        {
            sum += i;
        }
        printf("%d", sum);

    也可以这么写

    void main()
    {
        int i=1, sum=0, b=2;
        for (;i<=10 &&b>1;i++)
        {
            sum += i;
        }
        printf("%d", sum);
    }

    或者
    void main()
    {
        int i=1, sum=0, b=2;
        for (;i<=10 &&b>1;)
        {
            sum += i;
         i++; } printf("%d", sum); }
     

    也可以都省略

    例如:for(; ;)语句, 相当于while(1)语句

    表达式1和表达式3也可可以是一个简单表达式也可以是逗号表达式。

    for (i=0,j=0;i<=100;i++,j--) k=i+j

    大写的注意

    原因:由于我设置的是j<=5, 当第二次大循环j已经大于5等于6了,所以不满足条件
    还请自己多注意一下。
  • 相关阅读:
    windows phone 7 开发工具合集
    Windows Phone中文开发资源集中营
    Windows Phone 7 输入法升起时,保持页面不被推起
    winXP控制面板TTS语音打不开卡顿SDK开发无法播放中文解决方法MFC调用代码
    c#winform不要通过文件右键属性去复制文件路径,会复制到隐藏的字符,打印路径会看见问号,导致无法打开指定文件
    密钥读yao还是yue?
    office access accdb驱动目录注册表路径
    c#winform判断是否为数字型字符串
    c#序列化json文件为字符串更改json对象内容
    在C#HttpWebRequest 设置超时方法
  • 原文地址:https://www.cnblogs.com/renfanzi/p/6629082.html
Copyright © 2011-2022 走看看