作业2


实验1
成绩1(if语句)
代码:
#include <stdio.h> int main() { int a; printf("请输入你的成绩\n"); scanf("%d",&a); if(a>=90&&a<=100) { printf("你的成绩为A\n"); } else if(a>=80&&a<90) { printf("你的成绩为B\n"); } else if(a>=70&&a<80) { printf("你的成绩为C\n"); } else if(a>=60&&a<70) { printf("你的成绩为D\n"); } else if(a<60&&a>=0) { printf("你的成绩为E\n"); } else { printf("输入错误\n"); } return 0; }




总结:注意成绩的上下界问题,最大分值不超过100,最低分值不小于0分。






成绩2(switch语句)
代码:
#include<stdio.h> #include<stdlib.h> int main() { int a; printf("请输入你的成绩\n"); scanf("%d",&a); if(a>100||a<0) { printf("输入错误") ; exit(0); } switch(a/10) { case 10:case 9: printf("A\n"); break; case 8: printf("B\n"); break; case 7: printf("C\n"); break; case 6: printf("D\n"); break; case 5:case 4:case 3:case 2:case 1:case 0: printf("E\n"); break; } return 0; }


总结:case语句后面的一样时可用:连接两个case语句。







实验三(倒序数。)
代码:

#include <stdio.h> int main () { int x,a,b,c,d,e; printf("输入一个不多于5位数的正整数\n"); scanf("%d",&x); a=x/10000; b=(x/1000)-(a*10); c=(x/100)-(a*100)-(b*10); d=(x/10)-(a*1000)-(b*100)-(c*10); e=x-(a*10000)-(b*1000)-(c*100)-(d*10); if(x>=10000&&x<100000) { printf("这是一个5位数,它的倒叙数为%d%d%d%d%d\n",e,d,c,b,a); } else if(x>=1000&&x<10000) { printf("这是一个4位数,它的倒叙数为%d%d%d%d\n",e,d,c,b); } else if(x>=100&&x<1000) { printf("这是一个3位数,它的倒叙数为%d%d%d\n",e,d,c); } else if(x>=10&&x<100) { printf("这是一个2位数,它的倒叙数为%d%d\n",e,d); } else if(x>=1&&x<10) { printf("这是一个1位数,它的倒叙数为%d\n",e); } else { printf("输入错误\n"); } return 0; }


总结:最后忘了写return 0,以后写程序先把return0 写出来。





实验4(分段函数)
代码:
#include<stdio.h> #include<stdlib.h> int main() { int x; float y; printf("请输入一个整数\n"); scanf("%d",&x); if(x>=0&&x<5) { y=-x+2.5; } else if(x>=5&&x<10) { y=2-1.5*(x-3)*(x-3); } else if(x>=10&&x<20) { y=x/2-1.5; } else { printf("输入错误\n"); exit(0); } printf("y的值为%0.3f",y); return 0; }

总结:exit 新学的结束语句还不太会用
 

实验5回文数
代码:


    #include <stdio.h>
    int main()
    {
    int x,a,b,c,d,e;
    printf("请输入一个五位数\n"); 
    scanf("%d",&x);
    a=x/10000;
    b=(x/1000)-(a*10);
    c=(x/100)-(a*100)-(b*10);
    d=(x/10)-(a*1000)-(b*100)-(c*10);
    e=x-(a*10000)-(b*1000)-(c*100)-(d*10);
    if(a==e&&d==b)
    { 
    printf("这个五位数是回文数\n"); 
    } 
    else 
    {
    if(x>100000||x<10000)
    {
        printf("这个不是五位数\n")    ;
}    
    
    else 
    {
        printf("这个数不是回文数\n");
    }
 }
    return 0;
    }
总结; 要讨论输入的不是五位数的情况。


 

 
 
原文地址:https://www.cnblogs.com/endeavor992/p/5961321.html