C语言第一次实验报告
一.实验题目,设计思路,实现方法
实验题目:1(第三次实验7-7计算火车运行时间)本题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。输入格式:输入在一行中给出2个4位正整数,其间以空格分隔,分别表示火车的出发时间和到达时间。每个时间的格式为2位小时数(00-23) 和2位分钟数(00-59),假设出发和到达在同一天内。输出格式:在一行输出该旅途所用的时间,格式为“hh:mm”,其中hh为2位小时数、mm为2位分钟数。
2.(第四次实验4-6输出华氏-摄氏温度转换表)输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为[lower,upper]、且每次增加2华氏度的华氏-摄氏温度转换表。温度转换的计算公式:C=5×(F−32)/9,其中:C表示摄氏温度,F表示华氏温度。
在一行中输入2个整数,分别表示lower
和upper
的值,中间用空格分开。第一行输出:"fahr celsius",接着每行输出一个华氏温度fahr(整型)与一个摄氏温度celsius(占据6个字符宽度,靠右对齐,保留1位小数)。若输入的范围不合法,则输出"Invalid."。
3.(第四次实验加强版4-2-4三天打鱼两天晒网)中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?输入在一行中给出一个不超过1000的正整数N。在一行中输出此人在第N天中是“Fishing”(即“打鱼”)还是“Drying”(即“晒网”),并且输出“in day N”。
二.源代码
7-7 计算火车运行时间:
int start,end;
int minute,hour;
scanf("%d %d",&start,&end);
start=start/100*60+start%100;
end=end/100*60+end%100;
hour=(end-start)/60;
minute=(end-start)%60;
printf("%02d:%02d",hour,minute);
return 0;
4-6 输出华氏-摄氏温度转换表
int fahr,lower,upper;
double celsius;
scanf("%d %d",&lower,&upper);
if(lower<=upper&&upper<=100){
printf("fahr celsius\n");
for(fahr=lower;fahr<=upper;fahr=fahr+2){
celsius=(5.0/9.0)*(fahr-32);
printf("%d%6.1f\n",fahr,celsius);
}
}
else{
printf("Invalid.\n");
}
return 0;
4-2-4 三天打鱼两天晒网
int n;
scanf("%d",&n);
if(n%5>0&&n%5<=3){
printf("Fishing in day %d",n);
}
else {
printf("Drying in day %d",n);
}
return 0;
三.遇到的问题,解决方法和心得体会
做题的时候还是不够细心,总是在细节处出问题。在读题时也不够认真,以至于总是出错。感谢老师与班助的耐心解答,以后会更加努力。