C语言复习4_条件结构

1、while循环

循环三要素:

1)、循环变量的初值

2)、循环变量的判断

3)、循环变量的更新

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int i = 0;
    while(i<=10)
    {
        printf("第%d遍\n",i);
        i++;
    }
    return 0;
}

小练习1:使用循环计算1-100的累加和

#include <stdio.h>
#include <stdlib.h>

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

小练习2:使用循环实现三次密码输入错误退出系统

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int i = 0;  //循环变量
    int password;   //密码
    while(i<3)
    {
        printf("请输入密码:");
        scanf("%d",&password);
        if(password!=123456)
        {
            printf("密码输入错误,当前输入第%d次密码!\n",i+1);
        }
        else if(password==123456)
        {
            printf("密码输入成功!\n");
            break;
        }
        if(i==2)
        {
            printf("密码输错三次,系统强制退出!\n");
            exit(0);
        }
        i++;
    }

    return 0;
}

这里有几个要注意的地方:

1)、加入了当密码输入正确就退出的判断机制;

2)、if...else if....else if...else...这种结构,一旦里面有一个符合条件,就不会继续下面的判断了,所以在

判断i是否到2这里,用的是if,而不是else if,因为第三次密码输入错误的时候,已经在第一个if里判断过了,就不会在下面的else if里

继续判断了

小练习3:某宝双十一2015年的交易额为800亿,每年递增25%,问按此速度哪年交易额达到2000亿?

#include <stdio.h>
#include <stdlib.h>

int main()
{
    double initSum = 800;  //2015年的交易额
    double increase = 0.25;   //递增率
    int initYear = 2015; //初始年份
    while(1)
    {
        initSum *= 1.25;
        if(initSum>=2500)
        {
            printf("第%d年交易额达到2000亿,此年交易额为%lf\n",initYear+1,initSum);
            break;
        }
        initYear++;
    }

    return 0;
}

小练习4:使用循环模拟实现玩家对战

双方初始HP均为100;

每次攻击5-15;

HP最先到零或以下的被KO

猜你喜欢

转载自www.cnblogs.com/yqpy/p/10454202.html
今日推荐