• 第二次作业


    1 判断成绩等级。

    给定一百分制成绩,要求输出成绩的等级。90以上为A,80-89为B,70-79为C,60-69为D,60分以下为E,输入大于100或小于0时输出“输入数据错误”。 分别用if和用switch语句实现

    (1)if语句

     

    #include<stdio.h>
     int main()
     {
      int a;
      printf("请输入成绩:");
      scanf("%d",&a);
      if(a>100||a<0)
      {
       printf("输入错误");
      }
      else if(a>=90)
      {
       printf("A");
      }
      else if(a<90&&a>79)
      {
       printf("B");
      }
       else if(a<80&&a>69)
      {
       printf("C");
      }
       else if(a<70&&a>59)
      {
       printf("D");\
      }
      else
      {
       printf("E");
      }
      return 0;
     }

    实验总结  注意“;”不要丢

    (2)switch 语句

    #include <stdio.h> 
    int main()
     {
         int a;
         printf("请输入成绩:");
         scanf("%d",&a);
         if(a<0||a>100)
         {
         printf("error");
         }
         else   
         switch(a/10)
          {    case 10:
            case 9:printf("A");break;
            case 8:printf("B");break;
            case 7:printf("C");break;
            case 6:printf("D");break;
            default:printf("E"); 
          } 
          return 0;
     }

    2.判断整数位数及逆序输出。

    输入一个不多于5位数的正整数,判断它是几位数并逆序输出。注意验证数据的合法性。

    #include <stdio.h> 
    int main()
     {
         int a,b,c,d,e,f,g,h;
         printf("请输入一个不多于五位数的正整数:");
         scanf("%d",&a);
         if(a>99999||a<0)
         {
             printf("输入错误"); 
         }
         else if (a<10)
         {
             printf("这是一个一位数 %d",a); 
         }
         else if(a>9&&a<100)
         {
             b=a/10;
             c=a%10;
             d=c*10+b;
             printf("这是一个两位数 %d",d); 
         }
          else if(a>99&&a<1000)
         {
             b=a/100;
             c=a%100/10;
             d=a%100%10;
             e=d*100+c*10+b;
             printf("这是一个三位数 %d",e); 
         }
          else if(a>999&&a<10000)
         {
             b=a/1000;
             c=a%1000/100;
             d=a%1000%100/10;
             e=a%1000%100%10;
             f=e*1000+d*100+c*10+b;
             printf("这是一个四位数 %d",f); 
         } 
          else 
         {
             b=a/10000;
             c=a%10000/1000;
             d=a%10000%1000/100;
             e=a%10000%1000%100/10;
             g=a%10000%1000%100%10;
             h=g*10000+e*1000+d*100+c*10+b;
             printf("这是一个五位数  %d",h); 
         }
         
          return 0;
    }
         

    3.回文数问题

     给定一个5位数,判断它是否是回文数。例如:12321是回文数。回文数的特点是个位和万位相同,十位和千位相同。

    #include <stdio.h> 
    int main()
     {
         int a,b,c,d,e,f; 
         printf("请输入一个五位数:");
         scanf("%d",&a);
         b=a/10000;
         c=a%10000/1000;
         d=a%10000%1000/100;
         e=a%10000%1000%100/10;
         f=a%10000%1000%100%10;
         if(b!=f||c!=e)
         {
             printf("不是回文数"); 
         }
        else 
        {
            printf("是回文数"); 
        }
        return 0;
    }

    4.计算分段函数

    y=-x+2.5                         0 <= x < 5

            y=2-1.5(x-3)(x-3)        5 <= x < 10

            y=x/2-1.5                     10 <= x < 20

           输入x的值(x为整数),输出y的值,结果保留3位小数。

    #include <stdio.h> 
    int main()
     {
         int x;
         float y; 
         printf("请输入一个x值:");
         scanf("%d",&x);
         if(x>=0&&x<5)
         {
             y=-x+2.5;
             printf("y等于%.3f",y);
         }
         else if(x>=5&&x<10)
         {
             y=2-1.5*(x-3)*(x-3);
             printf("y等于%.3f",y);
         }
         else if(x>=10&&x<20)
         {
             y=x/2-1.5;
             printf("y等于%.3f",y);
         }
         else 
         {
             printf("输入的x值不在定义域"); 
         }
         return 0;
     }

    知识点总计:if语句和switch语句的运用 理解多个if语句,if...else if... 和if嵌套

    实验总结 : if 和else 下用语句在{}内 , 注意float 对应%f 的使用   %.3f的应用

  • 相关阅读:
    性能测试
    领域驱动设计(DDD)的实际应用
    Js模块模式
    Roslyn and NRefactory
    前端与后端分离的架构实例3
    angular + easyui 做界面验证
    java.lang.OutOfMemoryError: unable to create new native thread(转)
    oracle client server那点事
    一次处理ORA-07445的历险记(转)
    一条执行4秒的sql语句导致的系统问题 (转)
  • 原文地址:https://www.cnblogs.com/wjm666/p/5954767.html
Copyright © 2020-2023  润新知