《哈工大C语言实验题.docx》由会员分享,可在线阅读,更多相关《哈工大C语言实验题.docx(62页珍藏版)》请在优知文库上搜索。
1、Q508.(10分)第5章试验2:体型推断。医务工作者经广泛的调杳和统计分析,侬据身高与体重因索给出了以下按“体指数”进行体型推断的方法。体指数计算公式是:t=w/(h*h)其中:t是体指数;W是体重,其单位为千克;h是身高,其单位为米。依据给定的体指数t计克公式,可推断你的体重属于何种类型:当t18时,为低体重;当】8Vt25时,为正常体重;当25t27时,为超重体重;当t27时,为肥胖。*输入提示信息格式:“P1.easeenterh,w:n*输入数据格式要求:”f,%f(先读入身高,再读入体重,身高以米读入,体重以千克读入)*输出数据格式要求:当t18时,输出:1.owerweight!
2、n当18t25时,输出:StandardWeight1.n当25t27时,输出:-Higherweight!n-当t27时,输出:Tfat!n/inc1.ude#inc1.udemain()f1.oatt,w,h;printf(P1.easeenterh,w:n);scanf(%f,%f,&h,&w);t=w(h*h);if(t=18&t=25&t27)printf(Higherweight!n);e1.seprintf(Toofat!n);return0;Q586.10分)编写一个程序,输入年份和月份,推断该年是否是闰年,并依据给出的月份推断是什么季节和该月有多少天?(闰年的条件是年份能被4
3、整除但不能被100整除,或者能被40。整除;规定35月为春季,68月为豆季,911月为秋季,1、2和12月为冬季)。*输入格式要求:d,%d”提示信息:P1.easeenteryear,month:*输出格式要求:%dis1.eapyearn%disnot1.eapyearnTheseasonisspring/summer/autumn/winterThenumberofdaysofthismonthis%dn程序运行示例如下:实例1:P1.easeenteryear,month:2012,112012is1.eapyearTheseasonisautumnThenumberofdaysoft
4、hismonthis30实例2:P1.easeenteryear,month:2013,122013isnot1.eapyearTheseasoniswinterThenumberofdaysofthismonthis31#inc1.ude#inc1.udemain()intyear=。,1.eap=。,mon=0,day=。;printf(P1.caseenteryear,month:);scanf(%d,%d,&year,&mon);if(year%100!=0&.&year%4=0)I(year%100=08&year%400=O)printf(%dis1.eapyearn,year);
5、1.eap=1.;e1.seprintf(%disnot1.eapyearn,year);switch(mon)case 1:case 2:case12:printf(Theseasoniswintern);break;case 3:case 4:case5:printf(Theseasonisspringn);break;case 6:case 7:case8:printf(Theseasonissummern);break;case 9:case 10:case11.:printf(Theseasonisautumnn);break;switch(mon)case1:case3:case5
6、:case 7:case 8:case10:case12:day=31;break;case4:case6:case9:case11:day=30;break;case2:if(1.eap=1.)day=29;e1.seday=28;printf(Thenumberofdaysofthismonthis%dn,day);03161.(10分)请用e1.seif多分支条件推断语句编程设计一个简洁的计算器程序。要求:请用户按以下形式从键盘输入表达式:操作数运算符QP操作数然后计算表达式的值*输入提示信息*:无*输入数据格式*:%f%c%r*输出数据格式*:-%.2f%c%.2f=%.2fn若若输入
7、的运算符是除法运算符/,当除数为。时,输出数据格式为:datis0!Error!n若输入的运算符不是加(+)、减(一)、乘(*)、除(/),则输出数据格式为:-ErrOr!n友情提示:用户输入的运算符为算术运算符:加(+)、减(一)、乘(*)、除(/)o用字符变墙op表示;操作数和操作数为浮点型数据,分别用浮点型变量dat1.dat2表示。程序运行结果如下所示:1+2/1.00+2.00=3.00#inc1.ude#inc1.udemain()f1.oata=O,b=O;charop;scanf(%f%c%f,&a,&op,&b);if(op=+)printf(%.2f%c%.2f=%.2fn
8、,a,o,b,a+b);e1.seif(op=-)printff,%.2f%c%.2f=%.2fn,a,oP,b,a-b);e1.seif(op=*)printfC,%.2f%c%.2f=%.2fn,a,op,b,a*b);e1.seif(op三=)!if(b!=O)printf(%.2f%c%.2f=%.2fnB,a,o,b,ab);e1.seprintf(datis0!Error!n);e1.seprintf(,Error!n);03185(10分)试验二(2016春刘秉权C语言课):依据输入的百分制成果score,转换成相应的五分制成果grade后输出。转换规则为(要求用SWitCh语句
9、实现):当score大于等于90且小于等于100时,grade=A;当score大于等于80且小于90时,grade=B;当score大于等于70且小于80时,grade=C;当score大于等于60且小于70时,grade=D;当score大于等于0且小于60时,grade=E格式要求:输入提示:P1.easeenterscore:输出形式形如:75-C”、“0-E”当输入分数不正确时,输出:InPUtenor!#inc1.udemain()ints,m;printf(P1.easeenterscore:);scanf%d,s);m=s100?-1.:s/1.0;switch(m)(case
10、10:case9:printf(%dAn,s);break;case8:printf(%dBn,s);break;case7:printf(%d-Cn,s);break;case6:printf(%dDn,s);break;case5:case4:case3:case2:case1:caseO:printf(%dEn,s);break;defau1.t:printf(Inputerror!);0221.(10分)编程从键航输入某年某月(包括闰年),用SWitCh语句编程输出该年的该月拥有的天数。要求考虑闰年以与输入月份不在合法范的内的状况。已知闰年的2月有29天,平年的2月有28天。*输入格式
11、要求:”%d,%d提示信息:Inputyeajmonth:*输出格式要求:”31daysn29daysn28daysnInputerror!nt程序运行示例如下:Inputyear,month:2004,229days#inc1.udemain()inta,b;printf(Inputyear,month:);scanf(,%4d,%2d,&a,&b);switch(b)case1:case3:case5:case7:case8:case10:case12:printf(,131daysn);break;case4:case6:case9:case11:printf(30daysn);brea
12、k;case2:if(a%4=O&a%100!=O)a%400=O)printf(29daysn);e1.seprintf(28daysn);break;defau1.t:printfCInputerror!n);return0;Q2fO.(1.O分)第7章试酷任务1:所谓素数是指这个数只能被1和自身整除。要求在主函数输入个数,调用函数FunO推断该数是否是索数。打印信息在主函数中进行。例如:从键盘输入5,5是素数则打印如F信息:5isaprimenumber.又如:从键盘输入4,4不是素数则打印如下信息:“4isnotaprimenumber负数、。和】均不是素数。对输入的数据要考虑数据的合
13、法性,不满意条件的数要重新输入直到满意条件为止。不能运用全局变出,不按给定的函数原型编写程序不给分。FUno函数原型如下:intFun(intm);*输入数据提示信息:P1.easeinputanumber:n注:该提示信息清放在循环体外*输入数据格式为:“%d*输出格式要求:若是素数输出数据格式为:disaprimenumbern若不是索数输出数据格式为:disnotaprimenumbern#inc1.ude#inc1.udeintFunfintm);main()inta;printf(P1.easeinputanumber:n);whi1.e(scanf(%d,&a)if(a0&a!=1&Fun(八)=Dprintf(%disaprimenumbern,a);e1.seprintf(%disnotaprimenumbern,a);break;return0;intFu