zoukankan      html  css  js  c++  java
  • 第六次作业

    要求一(20经验值)

    要求二(60经验值)
    题目7-1 高速公路超速处罚

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

    设计思路
    1.先设出两个变量分别代表车速与限速。
    2.然后再有if语句判断是否超速,并且超速程度的大小。
    3.输出判断情况。
    流程图

    本题调试过程碰到问题及解决办法
    本题为上周做过的题,思路清晰,没有问题。
    本题PTA提交列表

    题目7-2 计算油费

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

    设计思路
    1.有加油量a,汽油品种b(90、93或97)和服务类型c(m - 自助,e - 协助)三个变量。
    2.根据汽油品种分为3种情况,再在每种情况中分为自助还是协助两种类型。
    3.每种按照每种情况进行计算,得出结果,保留两位。
    流程图

    本题调试过程碰到问题及解决办法
    再做此题之前看到了C语言群里同学们的讨论,所以我做的时候直接使用了double,一次做对,没有问题。
    本题PTA提交列表

    题目7-3 比较大小

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

    设计思路
    1.三个变量,比较大小,可以分出六种情况,通过错误提示可以知道,还有第七种,就是都相等。
    2.使用if和even if将所有语句列出。
    3.按顺序重新赋值,最后输出结果。
    流程图

    本题调试过程碰到问题及解决办法
    这道题在做的时候遇见了很多问题,首先因为大量的使用even if语句,无法输出结果。如图

    经过几次删改,勉强可以输出,却是这样的

    输出多个结果,还是错的,后来在同学的提醒下,对even if()括号内的内容进行了修改,加入了&&使得条件更加清楚。
    同时在输出的时候也做了改变,先用字母代换,最后统一输出,避免了一次输出多个结果。
    本题PTA提交列表

    题目7-4 两个数的简单计算器 (必须使用switch结构实现)
    实验代码

    #include<stdio.h>
    #include<math.h>
     
    int main()
    {
    	int a,b,d;
    	char c;
    	scanf("%d",&a);
    	getchar();
    	scanf("%c",&c);
    	scanf("%d",&b);
    	switch(c)
    	{
    		case '+':d=a+b,printf("%d",d);break;
    		case '-':d=a-b,printf("%d",d);break;
    		case '*':d=a*b,printf("%d",d);break;
    		case '/':d=a/b,printf("%d",d);break;
    		case '%':d=a%b,printf("%d",d);break;
    		default:printf("ERROR");
    	}
     } 
    

    设计思路

    1. 一共是五种符号计算,所以有五种情况,使用switch更为方便。
      2.用char插入符号,然后用switch进行分情况。
      流程图

    本题调试过程碰到问题及解决办法
    这道题主要问题是在switch语句应用不熟练上面,经常忘写break。同时在char上使用也犯了糊涂,最后在百度上查了符号的使用与数学运算,添加了#include(math.h)和getchar()最后成功。
    本题PTA提交列表

    要求三
    GIT:https://git.coding.net/MikeJackYao/The-first.git

    要求四(共7经验值)

    个人总结
    (1)主要学了if,switch,for这些语句,同时开了循环这个新语句。
    (2)难点是for中所需条件,还有循环语句,新内容,不知道多会儿循环结束输出结果。
    (3)希望老师可以多带我们复习下上节课的内容。

    要求五(共8经验值)

    互评和学习进度
    1、徐铭博:http://www.cnblogs.com/xmb1547828350/
    于耀松:http://www.cnblogs.com/jsjyys/p/7818602.html
    杨志群:http://www.cnblogs.com/12138-/p/7823088.html

    2、

  • 相关阅读:
    Chrome V75V76新版无法存为mhtml格式解决办法
    RHEL7 的注册
    JQuery淡入淡出 banner切换特效
    怎样把小坚果做成大生意
    黄页前台联动菜单修改时不能显示,要重新选择|没样式
    V9任何页面GET调用内容分页的说明
    phpcms v9 自定义伪静态的分页函数
    phpcms v9 自定义分页 带下拉跳转
    discuz X2.5自己写代码,获取当前登录的用户信息
    discuz!X2.5技术文档
  • 原文地址:https://www.cnblogs.com/yaoshunyux/p/7821348.html
Copyright © 2011-2022 走看看