C编程(五)流程控制之循环while,do while

来源:互联网 发布:带着淘宝去异界txt 编辑:程序博客网 时间:2024/06/05 23:47

1:while
基本格式:
while(表达式)
语句;
即当表达式成立时,执行语句。
举个栗子:
判断一个数是不是回文数(回文数:正着写和倒着写是一样的,例如:868)

#define _CRT_SECURE_NO_WARNINGS#include<stdlib.h>#include<string.h>#include<stdio.h>void main(){       int m, val;    int sum = 0;    printf("亲,请输入要判断的数字:\n");    scanf("%d",&val);    m = val;    while (m)    {        sum = sum * 10 + m % 10;        m = m / 10;    }    if (sum == val)    {        printf("亲,这个数字是回文数!\n");    }    else    {        printf("亲,这并不是回文数!\n");    }    system("pause");}

运行结果:
这里写图片描述
这里写图片描述

2:do… while
基本格式:
do
{
……..
}while(表达式)
举个栗子:
这里写图片描述
你发现了什么???
敲黑板:do……while肯定至少执行一次(先执行,后判断)

3:三种循环比较
for循环和while循环等价,可能执行,也可能不执行(表达式不成立时不执行),即:
这里写图片描述这里写图片描述

#define _CRT_SECURE_NO_WARNINGS#include<stdlib.h>#include<string.h>#include<stdio.h>void main(){       int i;    int sum1 = 0;    int sum2 = 0;    for (i = 0; i < 101; i++)    {        if (i % 2 == 1)        {            sum1 = sum1 + i;        }        else        {            sum2 = sum2 + i;        }    }    printf("奇数和sum1=%d\n", sum1);    printf("偶数和sum2=%d\n", sum2);    system("pause");}
#define _CRT_SECURE_NO_WARNINGS#include<stdlib.h>#include<string.h>#include<stdio.h>void main(){       int i;    int sum1 = 0;    int sum2 = 0;    i = 0;    while (i<101)    {        if (i % 2 == 1)        {            sum1 = sum1 + i;        }        else        {            sum2 = sum2 + i;        }        i++;    }    printf("奇数和sum1=%d\n", sum1);    printf("偶数和sum2=%d\n", sum2);    system("pause");}

你会发现,这两个是等价的,运行结果如下:
这里写图片描述

而do…while肯定至少执行一次。

原创粉丝点击