三种循环语句!及课后题

来源:互联网 发布:windows 自带扫描软件 编辑:程序博客网 时间:2024/05/02 01:14

1.while语句,这里不写了,不懂的回头看

2.do{语句}while(表达式); 这是新学的,研究下:

程序先执行do里面的语句,再判断while里面的表达式真假,如果表达式值为真就回到do位置继续重复执行do里面的语句,为假则跳出循环继续往下执行,类型其实跟单纯的whil语句类似,但是在某些场合可能会发挥作用

3.for语句一样   不写了   不明白的可以回头看


项目一

代码:

/* 利用循环求和*/#include <stdio.h>int main( ){    int a=0,sum=0;    /*for(a=0;a<=1000;++a)    {        if(a%2==0)            sum+=a;    }*/        /*for(a=0;a<=1000;a+=2)        sum+=a;*/            /*    while(a<=1000)    {        sum+=a;        a+=2;    }*/    do    {        sum+=a;        a+=2;    }while(a<=1000);    printf("%d",sum);    return 0;}
每个注释一种方法,大家可以看下

项目二

代码:

/* 阶乘*/#include <stdio.h>int main( ){    int i=1,a,sum=1;    scanf("%d",&a);    if(a<0)        printf("输入错误\n");    else    {       /* while(i<=a)            {                sum=sum*i;                i++;            }*/       /* do        {            sum=sum*i;            i++;        }while(i<=a);*/       for(i=1;i<=a;++i)            sum=sum*i;            }    printf("%d",sum);    return 0;}
项目三

代码:

/* 输出这样的整数*/#include <stdio.h>int main( ){    int  i, j;    /*for (i=0;i<=1000;i++)    {        j=i*10+6;        if (j%3==0)            printf("%d\n",j);    }*/    i=0;    j=0;    while(i<=1000)    {        j=i*10+6;        if(j%3==0)            printf("%d\n",j);            i++;    }    printf("\n");    return 0;}
其实俩个代码没区别,换了个写法,思想一致

项目四

代码:

/* 输出这样的整数*/#include <stdio.h>int main( ){    int  k,x,max;    scanf("%d", &x);    max=x;                 // 将x赋值给max,用来和下面的数进行比较    for(k=2;  k<=10; k++)     //  要输入10个数,从2开始循环9次即可    {        scanf("%d", &x);        if (max<=x)            //  用max和刚刚输入的数进行比较,输出大的            max=x;    }    printf("Max=%d\n", max);    return 0;}




0 0