找回密码
 register

QQ登录

只需一步,快速开始

[*编程自学*] 第十二课:while循环 do...while 、goto

[复制链接]

[*编程自学*] 第十二课:while循环 do...while 、goto

[复制链接]
Waylee

主题

0

回帖

7459

积分

仙帝

积分
7459
Waylee 2024-8-2 23:45 | 显示全部楼层 |阅读模式

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?register

×
while循环、do...while
void test08()
{
        while(循环条件)
        {
                //循环语句
        }
        //如果“循环条件”为真,就进入循环体执行“循环语句”
}

注意:
  • while没有初始化语句,用户提前初始化好。
  • while没有步进语句,用户必须在循环语句中 写好 步进语句。

案例:
#include<stdio.h>
void test08()
{
        int i = 1; //提前初始化
        int sum = 0; //局部变量如果不初始化,内容不确定
        while(i <= 100)
        {
                sum += i;
                i++;//步进条件
        }
        printf("sum = %d\n",sum);
}
int main(int argc,char *argv[])
{
        test08();
        return 0;
}


do ... while
语法:
void test09()
{
        do
        {
                //循环语句
        }while(循环条件);
}


先执行循环语句,再判断循环条件是否为真,如果为真 进行下次循环,如果为假 直接退出循环
#include<stdio.h>
void test09()
{
        int num = 0;
        do
        {
                printf("ok\n");
        }while(num >0);
}
int main(int argc,char *argv[])
{
        test09();
        return 0;
}


goto 案例:
#include<stdio.h>
void test10()
{
        printf("---------------01----------------\n");
        printf("---------------02----------------\n");
        goto here;
        printf("---------------03----------------\n");
        printf("---------------04----------------\n");
        printf("---------------05----------------\n");
        here:
        printf("---------------06----------------\n");
        printf("---------------07----------------\n");
}
int main(int argc,char *argv[])
{
        test10();
        return 0;
}

运行结果:
---------------01----------------
---------------02----------------
---------------06----------------
---------------07----------------


练习:
重复输入1~7的数值判断星期几,注意输入0就结束程序,如果是0或者1~7以为的数,请提示“请重新输入有效数字”。
#include<stdio.h>
void test11()
{
        int num =0;
        do
        {
                printf("请输入数字1~7:");
                scanf("%d",&num);
                switch(num)
                {
                        case 1:
                                printf("星期一\n");
                                break;
                        case 2:
                                printf("星期二\n");
                                break;
                        case 3:
                                printf("星期三\n");
                                break;
                        case 4:
                                printf("星期四\n");
                                break;
                        case 5:
                                printf("星期五\n");
                                break;
                        case 6:
                                printf("星期六\n");
                                break;
                        case 7:
                                printf("星期七\n");
                                break;
                        default:
                                printf("请重新输入有效数字:");
                                scanf("%d",&num);
                }
        }while(num != 0);
}
int main(int argc,char *argv[])
{
        test11();
        return 0;
}

总结:
for while 我们如何选择呢?
如果循环的次数是确定的,建议选择for
如果循环的次数不确定,只知道退出的条件,建议选择while

雪舞知识库 | 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 |网站地图|天天打卡

GMT+8, 2024-11-22 01:49 , Processed in 0.055030 second(s), 11 queries , Redis On.

Powered by XueWu Licensed

Copyright © Tencent Cloud.

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