C语言——第六周作业

题目

题目一:高速公路超速处罚

1.实验代码

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

2.设计思路

①算法

Begin

输入speed,maxspeed                     //分别表示实际速度和车道限速

计算x的值                                //x为实际速度超出车道限速的百分比的值

判断x值的大小,并输出不同结果

end

②流程图

C语言——第六周作业

3.本题未遇到问题

4.本题PTA提交列表

C语言——第六周作业

题目二:计算油费

1.实验代码

#include <stdio.h>
int main()
{
int a = ;
float b,price,discount,money;
char c;
scanf("%d %2f %c",&a,&b,&c);
if( b == ){
price = 6.95;
}
if( b == ){
price = 7.44;
}
if( b == ){
price = 7.93;
}
if( c == 'm'){
discount = 0.05;
}
if( c == 'e'){
discount = 0.03;
}
money = a * price * ( - discount);
printf("%.2f",money);
}

2.设计思路

①算法

Begin

输入a,b,c                                //a代表加油量,b代表汽油品种,c代表服务类型

判断b的值,定义price的值                      //通过判断不同品种的汽油,定义不同的单价

判断c的值,定义discount的值                   //通过判断不同类型的服务,定义不同的折扣比例

计算money                          //利用money = a * price * (1 - discount)这一公式计算应付款

输出money的值

end

②流程图

C语言——第六周作业

3.本题未遇到问题

4.本题PTA提交列表

C语言——第六周作业

题目三:比较大小

1.实验代码

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

2.设计思路

①算法

Begin

输入a,b,c

判断a与b的值的大小,将较大的值赋给x,较小的值赋给z。                        //定义x为最大值,z为最小值,y为中间值

判断a、b中较大值与c的值的大小。若c大,将c赋给x。

否则,判断c是否小于a、b中较小值。若是,将c赋给z。

中间值y为三个数之和减去最大值与最小值。

输出z->y->x

end

②流程图

C语言——第六周作业

3.本题未遇到问题

4.本题PTA提交列表

C语言——第六周作业

题目四:两个数的简单计算器

1.实验代码

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

2.设计思路

①算法

Begin

输入 a c b;                         //a、b为输入的两个整数,c为运算符

判断c为何种符号

若合法,计算并输出a与b经过此种运算符运算后的结果

若不合法,输出ERROR

②流程图

C语言——第六周作业

3.本题起初并未按照作业要求使用switch语句,经过同学提醒修正。

初始if语句代码:

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

4.本题PTA提交列表

C语言——第六周作业

我的git地址:https://git.coding.net/dx200798/sixth.git

项目截图

C语言——第六周作业

个人总结

一、本周学习内容:

1.学习了while语句、do...while语句、for语句这三个循环语句,并学习了三种循环的互相嵌套。

2.学习了break语句和continue语句。

3.练习了IF语句和switch语句,提高了对语句应用的熟练度。

二、疑点难点:

对for语句还没有比较熟练掌握,还需要练习。

三、对目前老师上课形式并没有什么意见,无法提出意见。

互评和学习进度

互评链接

链接一:http://www.cnblogs.com/fengzx/p/7801506.html

链接二:http://www.cnblogs.com/lixiaojing/p/7798963.html

链接三:http://www.cnblogs.com/exo123/p/7811906.html

图表

C语言——第六周作业

C语言——第六周作业

上一篇:广播发送者&广播接收者介绍


下一篇:ci(转)