
题目
题目一:计算分段函数
1.实验代码
#include <stdio.h>
int main()
{ double x,y;
scanf("%lf",&x);
if(x==){
y=;
}else{
y=/x;
}
printf("f(%.1lf) = %.1lf",x,y);
return ;
}
2.设计思路
①算法
Begin
输入(double)x
IF x=0 则 y=0 //计算y=f(x)=0 (x=0)
否则 y=1/x //计算y=f(x)=1/x (x≠0)
print x=y
end
②流程图
3.本题未遇到问题
题目二:A除以B
1.实验代码
#include <stdio.h>
int main()
{
int A,B;
float C;
scanf("%d %d",&A,&B);
C=(float)A/B;
if(B>){
printf("%d/%d=%.2f",A,B,C);
}else if(B==){
printf("%d/%d=Error",A,B);
}else{
printf("%d/(%d)=%.2f",A,B,C);
}
return 0;
}
2.设计思路
①算法
Begin
输入 A,B
C=A/B //计算A÷B的值
IF B>0 则 print A/B=C
否则IF B=0 则 print A/B=Error
否则 print A/B=C
end
②流程图
3.本题未遇到问题
题目三:阶梯电价
1.实验代码
#include <stdio.h>
int main()
{
int a;
double b;
scanf("%d",&a);
if(a<){
printf("Invalid Value!");
}else if(a>){
b=*0.53+(0.53+0.05)*(a-50.00);
}else{
b=a*0.53;
} printf("cost = %.2lf",b);
return ; }
2.设计思路
①算法
Begin
输入 a //a为用电量
IF a<0 则print Invalid Value! //用电量小于0时,为错误的值
否则 IF a>50 则 b=50*0.53+(0.53+0.05)*(a-50.00) //计算用电量大于50时,所花费金额
否则 b=a*0.53 //计算用电量大于等于0、小于50时,所花费金额
print cost=b
end
②流程图
3.本题未遇到问题
题目四:出租车计价
1.实验代码
#include<stdio.h>
int main()
{
int min,m;
double k;
scanf("%lf %d",&k,&min);
if(min<){
m=;
}else{
m=min*/;
}
if(k<=){
m=+m;
}else if(k<=){
m=+(k-)*+m;
}else{
m=++(k-)*+m;
}
printf("%d",m);
return ;
}
2.设计思路
①算法
Begin
输入 (double)k,min
IF min>5 则 m=0 //临时停车时间小于5min时,花费金额0元
否则 m=min*2/5 //临时停车时间大于5min时,每5分钟2元,取整
IF k<=3 则 m=10+m //3公里以下花费:10元,总金额为里程花费与停车花费之和
否则 IF k<=10 则m=10+(k-3)*2+m //10公里以下花费:10+(路程-3)×2元,总金额为里程花费与停车花费之和
否则 m=10+14+(k-10)*3+m //10公里以上花费:10+14+(路程-10)×2元,总金额为里程花费与停车花费之和
print m
end
②流程图
3.问题截图
解决方法:m不是浮点型变量,将m定义为整型变量,问题解决。
我的git地址:https://git.coding.net/dx200798/test.git
PTA题目完成情况
本周学习总结
本周学习内容:
①本周练习了IF语句,简单学习了swith-case语句。
②学习了运算符&&与 || ,更加详细得了解了运算符的优先级。
③学习了MOOC上的部分课程,并做了简单练习。
注:经常不能对变量的类型做出准确定义,应该在这方面多做练习。
点评链接:
链接一:http://www.cnblogs.com/jsjyys/p/7709233.html
链接二:http://www.cnblogs.com/xmb1547828350/p/7719018.html
链接三:http://www.cnblogs.com/ryo-/p/7731894.html
图表