高速公路超速处罚(C语言)--输出%

习题3-2 高速公路超速处罚 (15 分)
 

按照规定,在高速公路上行使的机动车,达到或超出本车道限速的10%则处200元罚款;若达到或超出50%,就要吊销驾驶证。请编写程序根据车速和限速自动判别对该机动车的处理。

输入格式:

输入在一行中给出2个正整数,分别对应车速和限速,其间以空格分隔。

输出格式:

在一行中输出处理意见:若属于正常行驶,则输出“OK”;若应处罚款,则输出“Exceed x%. Ticket 200”;若应吊销驾驶证,则输出“Exceed x%. License Revoked”。其中x是超速的百分比,精确到整数。

输入样例1:

65 60
 

输出样例1:

OK

输入样例2:

110 100
 

输出样例2:

Exceed 10%. Ticket 200
 

输入样例3:

200 120
 

输出样例3:

Exceed 67%. License Revoked

分析:这是一道数学问题,利用分段函数即可完成,思路虽然简单,但编写过程容易出错。主要是确定车速和限速之间的关系,可以用而这相除与1.1和1.5的关系,也可用如下方法:

--注:C语言 输出百分号(%)的方法:在%后加一个%,即两个%便可以输出“%”。

C语言代码如下:

 1 #include <stdio.h>
 2 int main(){
 3   int m, n;
 4   scanf("%d %d", &m, &n);  //m为车速,n为限速
 5   double q;
 6   q = (m - n) * 1.0 / n;
 7   if(q < 0.1)
 8     printf("OK\n");
 9   else if(q >= 0.1 && q < 0.5)
10     printf("Exceed %.f%%. Ticket 200\n", q * 100);
11   else
12     printf("Exceed %.f%%. License Revoked\n", q * 100);
13   return 0;
14 }

 

posted @ 2022-03-11 18:08  撰四记  阅读(1423)  评论(0编辑  收藏  举报