• 第六周作业


    1,题目一:高速公路超速处罚
    1.实验代码

    #include<stdio.h>
    int main()
    {
    float a,b;
    double c;
     scanf("%f %f",&a,&b);
    c=(double)(a-b)/b*100;
    if(c<10)
      printf("OK");
    else if(c<50)
      printf("Exceed %.0f%%. Ticket 200",c);
    else 
        printf("Exceed %.0f%%. License Revoked",c);
    return 0;
    }
    

    2.设计思路
    (1)主要描述题目算法
    第一步,写好程序基本框架。
    第二步,阅读题目估计本题有三种情况,车速小于限速的10%,车速大于限速的10%小于限速的50%,车速大于限速的50%。
    第三步,定义两个整数车速和限速,和一个浮点数超速的百分之多少。
    第四步,%.0f%%的意思是:%.0f是输出控制格式,表示输出一个double型数据,小数部分长度为0,即只有整数部分。不足左面空格补齐,即右对齐。而%%则输出来就是%。
    第五步,结束。
    (2)流程图

    3.本题调试过程碰到问题及解决办法
    一开始我是按下图做的

    但是就是有错误,我花了大量时间也没找出为什么。然后我就求助互联网了,发现少了一个0.5;然后我加了0.5;如下图所示,对了。

    在和同学交流中,我发现了还有另一种方法。如下图所示。

    4.pta截图

    1,题目二:计算油费
    1.实验代码

    #include <stdio.h>
    int main()
    {
       int a,b;
        char c;
        double d;
        scanf("%d %d %c",&a,&b,&c);
       if(b==90)
       {
         if(c=='m')d=6.95*0.95*a;
         else d=6.95*0.97*a;
       }
       else if(b==93)
       {
         if(c=='m') d=7.44*0.95*a;
         else d=7.44*0.97*a;
       }
       else
       {
         if(c=='m')d=7.93*0.95*a;
         else d=7.93*0.97*a;
       }
       printf("%.2f
    ",d);
        return 0;
        
    }
    

    2.设计思路
    (1)主要描述题目算法
    第一步,写好程序基本框架
    第二步,想到if,else if,else结构。
    第三步,分析题目内容可能有3个大种判断情况,有6个小种判断情况。
    第四步,输出不用情况的结果。
    第五步,结束。
    (2)流程图

    3.本题调试过程碰到问题及解决办法
    没问题
    4.pta截图

    5,在经过和其他同学交流后,我又尝试了利用switch语句来编译,及流程图如下图所示:

    1,题目三:比较大小
    1.实验代码

    #include<stdio.h>
    int main()
    {
      int a,b,d,t;
      scanf("%d %d %d",&a,&b,&d);
      if(a>b)
          t=a,
          a=b,
          b=t;
       if(a>d)
          t=a,
          a=d,
          d=t;
       if(b>d)
          t=b,
          b=d,
          d=t;
      printf("%d->%d->%d",a,b,d);
      return 0;
    }
    

    2.设计思路
    (1)主要描述题目算法
    第一步,写好程序基本框架。
    第二步,引入中间变量t。
    第三步,依次比较a,b,c的大小。a>b时,让t=a,a=b,b=t实现大小替换。a>c和b>c时也采用类似的方法进行替换。
    第四步,按题目意思->方式输从小到大排列。
    第五步,结束。
    (2)流程图

    3.本题调试过程碰到问题及解决办法
    简单题,没问题
    4.pta截图

    1,题目四: 两个数的简单计算器
    1.实验代码

    #include <stdio.h>
    int main()
    {
        int a,b;
        char c;
        scanf("%d %c %d",&a,&c,&b);
        if(c=='+')
            printf("%d",a+b);
        else if(c=='-')
            printf("%d",a-b);
        else   if(c=='*')
            printf("%d",a*b);
        else  if(c=='/')
            printf("%d",a/b);
        else  if(c=='%')
            printf("%d",a%b);
        else printf("ERROR") ;
        return 0;
    }
    

    2.设计思路
    (1)主要描述题目算法
    第一步,写好程序基本框架。
    第二步,想到if,else if,else结构。
    第三步,分析题目内容可能有5种判断情况。
    第四步,将+,-。*。/。%和error五种情况进行编程,然后输出结果。
    第五步,结束
    (2)流程图

    3.本题调试过程碰到问题及解决办法
    简单题,没问题
    4.pta截图

    5方法2,利用switch语句来编译

    个人总结
    1,学习了while,for,do while语句。
    2,开始用word做流程图简直慢的要命,现在在https://www.processon.com上作图,特别快。
    3,就是第一题要加0.5的还没懂。
    4,复习了switch语句,了解了switch可以简化程序,加快程序运行速度。

    git地址
    https://git.coding.net/AI1452349541/H.K.2.1.git
    git截图

    点评的其他同学
    陈雨秋http://www.cnblogs.com/cyq66992152/p/7789995.html
    林梦http://www.cnblogs.com/lin2580/p/7798108.html
    郭志康http://www.cnblogs.com/gzk08-20/p/7801265.html

    本周学习进程


    建议:
    1,写博客太费时了,建议减少些博客要求,多出些代码编程题。
    2,最近学的switch语句,循环语句练得太少,不过瘾,建议多出一些。
    3,最近学的编程太枯燥无味了,建议时不时插入一些有趣的简单的编程,如编程简单游戏,特殊图案也行..........

    热爱每一天
  • 相关阅读:
    C#中的WebBrowser控件的使用
    触发器
    SQL Server存储机制
    mongodb客户端操作常用命令
    动态居中方法
    关于node不需要重启即可刷新页面
    测试一个段落里面是否含有数字
    表单验证
    关于echarts和jquery的结合使用问题
    js函数获取ev对象
  • 原文地址:https://www.cnblogs.com/blueblog6/p/7788560.html
Copyright © 2020-2023  润新知