循环语句

1、while语句:
while(表达式)
语句
表达式为循环条件,语句为循环体;
其语义是:当表达式的值为非零时执行语句,然后再判断表达式的值只要它不为零,则继续执行语句,以此重复,直到表达式值为零。
例:求两个数的最大公约数
#include<stdio.h>

int main()
{
	int a;
	int b;
	int c;

	printf("please enter two numbers:");
	scanf("%d%d",&a,&b);

	while(a % b != 0)
	{
		c = a % b;
		a = b;
		b = c;
	}

	printf("bigest_number=%d\n",b);
	return 0;
}
2、do-while语句:
do
语句
while(表达式)
语义:先执行语句,再判断表达式,若表达式值为非零则重复执行语句,直到表达式值为零。
例:求1~n的和
#include<stdio.h>

int main()
{
    int sum = 0;
    int i = 1;
    int t;
    int n;

    printf("please enter a number;");
    scanf("%d",&n);

	do{
		t = i;
		sum += t;
		i++;
	}

	while(i <= n);

	printf("sum=%d",sum);
	
	return 0;
}
3、for语句:
for(表达式1;表达式2;表达式3)
语句
语义:首先计算表达式1;求表达式2的值若其值为非零执行语句,若表达式2 的值为零则结束for语句;最后求解表达式3转之前的执行
例:1~n中有多少个9
#include <stdio.h>

int count_9( int num )

{
     int count = 0;
     while( num != 0 )
     {
          if ( num %10== 9 ) 
	  {
	    count++;
	  }
     
     
     num = num / 10;
     }

     return count;
}

int main ()

{
     int i;
     int num;
     int count = 0;
     
     printf ("input number: \n");
     scanf("%d",&num);

     for (i=1;i<=num;i++ )
     {
         count = count + count_9(i);
     }
         printf("count = %d \n",count);

return 0;
}
省略表达式1:表示不对循环控制变量赋初始值
省略表达式2:表示不做其他处理即死循环
省略表达式3:表示不对循环控制变量进行操作
省略表达式1和表达式3:相当于一个while语句
省略3个表达式:表示无限循环即while(1)
几个循环语句相比较而言:for语句效率最高,while语句次之,do语句一般很少用。

while语句特点:循环次数可知

do-while语句特点:程序的可读性较强


for语句优点:所有循环细节都可在语句中描述,程序可读性较高


当循环次数有限时选择for语句;当循环次数未知时选择while语句。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值