• 第九周编程总结


    7-1 查询水果价格 (15 分)

    给定四种水果,分别是苹果(apple)、梨(pear)、桔子(orange)、葡萄(grape),单价分别对应为3.00元/公斤、2.50元/公斤、4.10元/公斤、10.20元/公斤。

    首先在屏幕上显示以下菜单:

    [1] apple

    [2] pear

    [3] orange

    [4] grape

    [0] exit

    用户可以输入编号1~4查询对应水果的单价。当连续查询次数超过5次时,程序应自动退出查询;不到5次而用户输入0即退出;输入其他编号,显示价格为0

    1).实验代码

    #include<stdio.h>

    int main()

    {

      

           printf("[1] apple ");

           printf("[2] pear ");

           printf("[3] orange ");

           printf("[4] grape ");

           printf("[0] exit ");

           

      

      int choice,i;

           

      for(i=1;i<=5;i++)

         {

           scanf("%d",&choice);

           

           if(choice==0)

               break;

           switch(choice)

              {

                case 1:printf("price = 3.00 ");break;

                case 2:printf("price = 2.50 ");break;

                case 3:printf("price = 4.10 ");break;

                case 4:printf("price = 10.20 ");break;

                default:printf("price = 0.00 ");break;

              }

              

                

         }

      return 0;

    }  

    2). 设计思路

    第一步:定义变量

    第二步:打印菜单

    第三步:调用for语句,输入变量

    第四步:调用if和switch函数判断编号

    第五步:输出答案

    3).本题调试过程碰到的问题及解决方法

            问题:没有考虑到输入0及退出程序的条件

           解决方法:调用if语句判断当编号为0

           4).运行结果截图

       

    7-2 计算油费 (15 分)

    现在90号汽油6.95元/升、93号汽油7.44元/升、97号汽油7.93元/升。为吸引顾客,某自动加油站推出了“自助服务”和“协助服务”两个服务等级,分别可得到5%和3%的折扣。

    本题要求编写程序,根据输入顾客的加油量a,汽油品种b(90、93或97)和服务类型c(m - 自助,e - 协助),计算并输出应付款。

    1)实验代码

    #include<stdio.h>

    int main()

    {

      int a,b;

      char c;

      double money=0,price=0,discount=0;

      scanf("%d %d %c",&a,&b,&c);

      /*加油量a,汽油品种b(90、93或97)和服务类型c(m - 自助,e - 协助)*/

      switch(b){

        case 90:price=6.95;break;

        case 93:price=7.44;break;

        case 97:price=7.93;break;

      }

      switch(c){

        case 'm':discount=0.95;break;

        case 'e':discount=0.97;break;

      }

      money=a*price*discount;

      printf("%.2f",money);

      return 0;

      

    }

    2).设计思路

    第一步:定义变量

    第二步:输入变量

    第三步:调用switch函数,判断汽油品种和服务类型

    第四步:计算油价

    第五步:输出答案

    3) .本题调试过程碰到的问题及解决方法

              问题:折扣计算错误

              解决方法:仔细阅览题目算清折扣

           4).运行结果截图

    7-3 计算天数 (15 分)

    本题要求编写程序计算某年某月某日是该年中的第几天。

    1).实验代码

    #include<stdio.h>

    int main()

    {

      int year,month,day,sum,i;

      scanf("%d/%d/%d",&year,&month,&day);

      sum=day;

      

      for(i=1;i<month;i++){

        switch(i){

          

              case 1:

              case 3:

              case 5:

              case 7:

              case 8:

              case 10:

              case 12:

              sum+=31;break;

              

              case 4:

              case 6:

              case 9:

              case 11:

              sum+=30;break;

              

              case 2:

              if((year%4==0&&year%100!=0)||year%400==0){

                sum+=29;

              }

              else{

                sum+=28;

              }

              break;

        }

      }

      printf("%d",sum);

      return 0;

    }

    2).设计思路

    第一步:定义变量

    第二步:输入变量

    第三步:调用switch函数,判断月数

    第四步:调用if语句判断是否为闰月

    第五步:累加,输出答案

    3).本题调试过程碰到的问题及解决方法

    问题:输入格式错误

    解决方法:按照输入样例重新输入

    4).运行结果截图

     

  • 相关阅读:
    vscode安装扩展插件提示:扩展不可用,XHR error?
    react函数组件的条件渲染和列表渲染
    动态设置背景图片和图片地址
    computed和watch,getters的计算变化
    VueLazyLoad图片懒加载
    vuex实现数据持久化
    vuex不需要一个个引入模块文件
    react的state和setState
    热爱生命 汪国真
    分分钟手写http server
  • 原文地址:https://www.cnblogs.com/lmcmha/p/9972693.html
Copyright © 2020-2023  润新知