1 学分绩计算
题目内容:
已知某大学期末考试学分绩的计算公式为:学分绩 =(工科数学 * 5 + 英语 * 1.5 + 线性代数 * 3.5) / 10请编程从键盘按顺序输入某学生的工科数学、英语和线性代数成绩,计算并输出其学分绩。
提示:
以下为程序的运行结果示例:Input math1, English and math2:80,70,100↙Final score = 85.50输入提示信息:"Input math1, English and math2:"输入格式: "%d,%d,%d"输出格式:“Final score = %.2f\n”
#include<stdio.h>int main(){int a,b,c;printf("Input math1, English and math2:"); scanf( "%d,%d,%d",&a,&b,&c);printf("Final score = %.2f\n",(a*5+b*1.5+c*3.5)/10); return 0;}
2 一尺之捶,日取其半
题目内容:
我国古代著作《庄子》中记载道:“一尺之捶,日取其半,万世不竭”。其含义是:对于一尺的东西,今天取其一半,明天取其一半的一半,后天再取其一半的一半的一半总有一半留下,所以永远也取不尽。请编写一个程序,使其可以计算出一条长为m的绳子,在n天之后剩下的长度。
提示:
运行结果示例1:Input length and days:12,5↙length=0.37500运行结果示例2:Input length and days:57.6,7↙length=0.45000输入提示信息:"Input length and days:"输入格式: "%f,%d"输出格式:“length=%.5f\n”
#include<stdio.h>int main(){int b;float a;printf("Input length and days:");scanf("%f,%d",&a,&b);for(b>0;b--;){a/=2;}printf("length=%.5f\n",a);return 0;}
3 网购打折商品V1.0
题目内容:
某网上购物网站对用户实行优惠,买家购物货款p越多,则折扣越多。今天正值该网站优惠折扣日,买家可以获得8%的折扣。请编程从键盘输入买家购物货款p,计算并输出买家折扣后实际应付出的价钱。注:程序中的数据类型为float。
提示:
程序的运行结果示例1:Input payment p:300↙price = 276.0程序的运行结果示例2:Input payment p:1299.8↙price = 1195.8输入提示信息:"Input payment p:"输入格式: "%f"输出格式:“price = %.1f\n”
#include<stdio.h>int main(){float price;printf("Input payment p:"); scanf("%f",&price); printf("price = %.1f\n",price*(1-0.08)); return 0;}
4 计算时间差V1.0
题目内容:
编程从键盘任意输入两个时间(例如4时55分和1时25分),计算并输出这两个时间之间的间隔。要求不输出时间差的负号。
提示:
程序的运行结果示例1: Input time one(hour, minute):4,55↙Input time two(hour,minute):1,25↙3 hour 30 minute程序的运行结果示例2: Input time one(hour, minute):1,56↙Input time two(hour,minute):3,25↙1 hour 29 minute输入提示信息:“Input time one(hour, minute):”
“Input time two(hour, minute):”输入格式:"%d,%d"输出格式:"%d hour %d minute\n"
这是我的答案但是无法通过测试只能得到一分
#include<stdio.h>#include<math.h>int main(){int hour1, minute1;int hour2, minute2;printf("Input time one(hour, minute):");scanf("%d,%d",&hour1,&minute1); printf("Input time two(hour, minute):");scanf("%d,%d",&hour2,&minute2);int ih = hour2 - hour1;int im = minute2 - minute1;if(ih<0&&im<0){ih=abs(ih);im=abs(im);}if(ih<0&&im>0){ih=abs(ih);}if(ih>0&&im<0){im=60+im;ih--;}printf("%d hour %d minute\n",ih,im);return 0;}
下面提供我从网上找到的答案
出处:/suxiaorui/article/details/89931802
#include<stdio.h>#include<math.h>main(){typedef struct clock{int hour;int minute;int second;} CLOCK;struct clock stu1;struct clock stu2;struct clock stu3;printf("Input time one(hour, minute):");scanf("%d,%d", &stu1.hour,&stu1.minute);printf( "Input time two(hour, minute):");scanf("%d,%d", &stu2.hour, &stu2.minute);stu3.hour = fabs((stu1.hour * 60 + stu1.minute) - (stu2.hour * 60 + stu2.minute)) / 60;stu3.minute = fabs(((stu1.hour * 60 + stu1.minute) - (stu2.hour * 60 + stu2.minute)) % 60); printf("%d hour %d minute\n", stu3.hour, stu3.minute);}