第六周作业

一、

#include <stdio.h>
int main (){
  int x,y;
  double z;
  scanf("%d %d",&x,&y);
  z=(x-y)*100.0/y;
  if (z<10)
  printf("OK\n",z);
 else if (z<50)
  printf("Exceed %.0f%%. Ticket 200\n",z);
  else  
  printf("Exceed %.0f%%. License Revoked\n",z);
  return 0;
} 

设计思路:

(1)定义出变量x,z,y,w

(2)根据公式计算出y
(3)判断x大于z;

(4)输出w

本题在编译中出现了编译错误,经过仔细检查后,发现少写了括号,改正后就对了。

二、

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

设计思路:
(1)根据服务类型自助和协助可分两种情况,再根据油号自助与协助分别有三种情况,共计六种。
(2)需要将所付费用定义成浮点数,将加油量和汽油品种定义成整数,服务类型需要用字符定义。
(3)先用if-else区分两种服务类型,在利用if输出三种油号情况,所付费用等于加油量乘以每种油号所需的费用再减去优惠的部分。

本题在编译中未出现错误

三、

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

设计思路
(1)题目要求比较三个数的大小,需要找一个变量做替换。
(2)三个数都是整数,用int定义a,b,c及一个替换量t。
(3)依次比较a,b,c的大小。a>b时,让t=a,a=b,b=t实现大小替换。a>c及b>c时也采用类似的方法进行替换。
(4)最后按照由大到小的顺序输出,按题目要求用->连接。

本题在编译中未出现错误
四、

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

设计思路
(1)又有字符的定义,用到char,在scanf中用%c定义。
(2)必须是switch的语句,有固定的格式,套用就可以了,case加运算符,结尾处用到break。不符合题意的用default进行概括,输出ERROR。

本题一开始是部分正确,后来发现是没写 case'%':printf("%d",A%B);break; ,补充后就对了。
我的git地址:https://git.coding.net/zgq459947/EDG.git

学习总结:本周学习内容(涉及知识点):
1、使用%.0f表示对这个输出的数四舍五入。
2、switch选择结构以及流程图的画法。
3、while与do while的循环结构,以及流程图的画法。
4、当使用if的嵌套语句结构时,需要对语句进行缩进。5、流程图的画法。
难点switch语句结构比较复杂,需要注意的点比较多,不容易及时想起,运用的时候也有一些错误。
意见和建议:老师上课的速度比较,并且把大量的时间都用来讲了很简单的知识点,老师应该把时间多讲一些比较难理解的知识点,并且多写程序,个人觉得,每一次作业,用在编程上的时间很少,大量的时间都花在写博客上了,是不是可以适当地减少博客的内容,多出些编程的题,博客主要用来提出问题,解决问题。
PTA提交列表:

学习进度与互评


互评
赵寅胜:http://www.cnblogs.com/2017023960ZYS/p/7800966.html
于耀淞:http://www.cnblogs.com/jsjyys/p/7818602.html
黄国戎:http://www.cnblogs.com/hgr123/p/7819951.html

posted @ 2017-11-12 19:18  张国庆  阅读(168)  评论(2编辑  收藏  举报