C语言 第四章 分支结构练习

来源:互联网 发布:成都网络直播培训机构 编辑:程序博客网 时间:2024/05/29 18:08
一、输入语文,数学成绩,根据平均分分3档
#include "stdio.h"void main(){    //接受用户输入    float chinese,math,avg;    printf("请输入语文成绩:");    scanf("%f",&chinese);    printf("请输入数学成绩:");    scanf("%f",&math);        //判断输入是否正确    if((chinese>=0&&chinese<=100)&&(math>=0&&math<=100))    {       //求平均分       avg=(chinese+math)/2;       //根据平均分分档       if(avg>=0&&avg<=59){          printf("C");       }       else if(avg>=60 && avg<=84)       {             printf("B");       }       else       {             printf("A");       }    }    else    {        printf("输入错误");    }}

二、使用switch实现算术运算

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    //输入部分    int d1,d2;    char o;        printf("d1=");    scanf("%d",&d1);        fflush(stdin);        printf("运算符(+ - * /):");    scanf("%c",&o);        fflush(stdin);        printf("d2=");    scanf("%d",&d2);        switch(o)    {        case '+':            printf("%d%c%d=%d",d1,o,d2,d1+d2);            break;        case '-':            printf("%d%c%d=%d",d1,o,d2,d1-d2);            break;        case '*':            printf("%d%c%d=%d",d1,o,d2,d1*d2);            break;        case '/':            if(d2!=0)            {                printf("%d%c%d=%d",d1,o,d2,d1/d2);            }            else            {                printf("除数不能为零");            }            break;        default:            printf("系统不支持该运算符。");    }    }

三、使用多重if实现算术运算

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    //输入部分    int d1,d2;    char o;        printf("d1=");    scanf("%d",&d1);        fflush(stdin);        printf("运算符(+ - * /):");    scanf("%c",&o);        fflush(stdin);        printf("d2=");    scanf("%d",&d2);        if(o=='+')    {        printf("%d%c%d=%d",d1,o,d2,d1+d2);    }    else if(o=='-')    {        printf("%d%c%d=%d",d1,o,d2,d1-d2);    }    else if(o=='*')    {        printf("%d%c%d=%d",d1,o,d2,d1*d2);    }    else if(o=='/')    {        if(d2!=0)        {            printf("%d%c%d=%d",d1,o,d2,d1/d2);        }        else        {            printf("除数不能为零");        }    }    else     {        printf("系统不支持该运算符。");    }    }

四、for循环

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    //1+2+3+4....+58=?    int i,sum=0;    for(i=1;i<=58;i++)    {        sum=sum+i;        printf("\n%d",i);    }    printf("总和=%d",sum);}

五、while循环

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int i=1;    while(i<=100)    {        printf("%d \n",i);        i++;    }}

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int i=1;    while(1)  //默认条件为真    {        printf("%d \n",i);        i++;        if(i==100)        {            break;  //结束循环        }    }}

 

六、do while循环

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int i=0;    do    {        i++;        printf("%d\n",i);    }while(i<58);}

七、密码示例

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int mm,e=0;  //输入次数    do{        printf("还有%d次机会",3-e);        printf("请输入密码:");        scanf("%d",&mm);        e++;    }while(mm!=9527&&e<3);        if(e<=3&&mm==9527)    {      printf("密码正确,欢迎进入系统。");     }    else    {       printf("卡已被锁,明天带身份证来。");    }}

 

八、多重if实现计算月份天数

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    //1 3 5 7 8 10 12 ->31    //4 6 9 11 ->30    //13 输入错误    int month,year;    printf("请输入年:");    scanf("%d",&year);    printf("请输入月:");    scanf("%d",&month);        if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)    {      printf("这个月有31天");    }    else if(month==4||month==6||month==9||month==11)    {      printf("这个月有30天");        }    else if(month==2)    {       //①、非整百年能被4整除的为闰年。(如2004年就是闰年,2100年不是闰年)       //②、能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)      //如果年被4整除且不被100整除,或400整除      if(year%4==0&&year%100!=0||year%400==0)      {          printf("闰年29天");      }      else      {          printf("平年28天");       }    }    else     {        printf("输入有误");    }     }

九、switch实现计算月份天数

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int month,year;    printf("请输入年:");    scanf("%d",&year);    printf("请输入月:");    scanf("%d",&month);        switch(month)    {        case 1:        case 3:        case 5:        case 7:        case 8:        case 10:        case 12:            printf("31天");            break;        case 4:        case 6:        case 9:        case 11:            printf("30天");            break;        case 2:            if(year%4==0&&year%100!=0||year%400==0)            {                printf("29");            }               else            {                printf("28");            }            break;        default:            printf("输入错误");    }}    

十、计算闰年

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    //被4整除且不被100整除,或被400整除    int year;    scanf("%d",&year);        if((year%4==0&&year%100!=0)||(year%400==0))    {        printf("闰年");    }else    {         printf("平年");    }    }

十一、判断素数

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int i,j,flag=1;  //就是素数 树旗,假定默认就是    scanf("%d",&j);         for(i=2;i<j/2;i++)    {        if(j%i==0)        {            flag=0;            break;        }    }        if(flag==1)    {        printf("素数\n");    }    else    {        printf("非素数\n");    }}

十二、100内所有素数

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int i,j,flag=1;  //就是素数 树旗        for(j=2;j<=100;j++)    {        flag=1;        for(i=2;i<j;i++)        {            if(j%i==0)            {                flag=0;                break;            }        }            printf("%d",j);        if(flag==1)        {            printf("素数\n");        }        else        {            printf("非素数\n");        }    }}

十三、switch实现输入数字与符号运算结果

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int n1,n2;    char op;        scanf("%d",&n1);    fflush(stdin);        scanf("%c",&op);    fflush(stdin);        scanf("%d",&n2);        switch(op)    {        case '+':            printf("%d+%d=%d",n1,n2,n1+n2);            break;        case '-':            printf("%d-%d=%d",n1,n2,n1-n2);            break;        case '*':            printf("%dx%d=%d",n1,n2,n1*n2);            break;        case '/':            if(n2==0)            {                printf("除数不能为零");            }            else            {                printf("%d/%d=%d",n1,n2,n1/n2);            }            break;        default:            printf("符号错误");    }}

十四、多重if实现输入数字与符号运算结果

/* Note:Your choice is C IDE */#include "stdio.h"void main(){    int n1,n2;    char op;        scanf("%d",&n1);    fflush(stdin);        scanf("%c",&op);    fflush(stdin);        scanf("%d",&n2);        if(op=='+')    {        printf("%d+%d=%d",n1,n2,n1+n2);    }    else if(op=='-')    {        printf("%d-%d=%d",n1,n2,n1-n2);    }    else if(op=='x')    {        printf("%dx%d=%d",n1,n2,n1*n2);    }    else if(op=='/')    {           if(n2==0)            {                printf("除数不能为零");            }            else            {                printf("%d/%d=%d",n1,n2,n1/n2);            }    }    else    {        printf("符号错误");    }}

0 0