<一>高速公路超速处罚

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

     设计思路:

 1.定义变量车速、限速为a,b。

 2.用if语句判断a是否大于或小于限速的1.1倍和1.5倍。

 3.按照题目要求输出。

    流程图:

本题调试过程碰到问题及解决办法:无。

 

 

<二>计算油费

#include<stdio.h>
int main()
{
    int a,b;
    double x,y;
    char c;
    scanf("%d %d %c",&a,&b,&c);
    switch(b)
{
    case 90:x=6.95;break;
    case 93:x=7.44;break;
    case 97:x=7.93;break;
}
    switch(c)
    {
        case'm':y=0.95;break;
        case'e':y=0.97;break;
    }
    printf("%.2f",a*x*y);
}

        设计思路:

1.定义变量加油量a,汽油品种b(90、93或97),服务类型c(其中c为字符型),x(汽油的价钱),y(不同服务类型的价钱)。

 2.用switch语句判断b和c的情况,分别对x,y赋值。

3.加油量a*x*y。

4.按照题目要求输出。

       流程图:

 

        本题调试过程碰到问题:答案错误。

       解决办法:对y赋值错误,赋给y的是折扣的价钱,需要减去折扣再赋给y,修改之后通过。

<三>比较大小

#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);
  
}

         设计思路:

1.定义整数a,b,c,t。

 2.用if语句判断a,b,c中谁大。

3.按照题目输出。

        流程图:

本题调试过程碰到问题及解决办法:无。

<四>两个数的简单计算器

#include<stdio.h>
int main()
{
  int a,b;
  char c;
  scanf("%d %c %d",&a,&c,&b);
  switch(c)
  {
  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");
}
}

       设计思路:

 1.定义a,b,c(其中a和b为整数型,c为字符型)

 2.用switch语句判断c的情况。

3.按照题目要求输出。

       流程图:

 

        本题调试过程碰到问题及解决办法:无。

         Git地址:https://coding.net/u/FENGZX/p/PTA/git

 

          图表:

 

           个人总结: 本周新学了for语句,它比while语句灵活,让我深层的理解了循环。但是if语句的嵌套让我有点不明白,大概是逻辑思维能力还不强吧,我会努力的!

posted on 2017-11-11 20:43  冯子旋  阅读(220)  评论(9编辑  收藏  举报