2009春学期C语言上机练习答案汇总(共62页).doc
《2009春学期C语言上机练习答案汇总(共62页).doc》由会员分享,可在线阅读,更多相关《2009春学期C语言上机练习答案汇总(共62页).doc(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上第2周(M2)20011求华氏温度100F对应的摄氏温度。计算公式如下,c=5*(f-32)/9,式中:c表示摄氏温度,f表示华氏温度。(源程序error02_1.cpp)输入输出示例:fahr=100,celsius=37#include int main(void) int celsius, fahr;/*-*/fahr=100;celsius=5*(fahr-32)/9; printf(fahr = %d, celsius = %dn, fahr, celsius); return 0;20012 求华氏温度 150F 对应的摄氏温度。计算公式:C = 5*F/
2、9-5*32/9,式中:C表示摄氏温度,F表示华氏温度。输入输出示例:fahr=150, celsius=66#include int main(void) int celsius, fahr;/*-*/fahr=150;celsius=5*fahr/9-5*32/9;printf(fahr = %d, celsius = %dn,fahr, celsius); return 0;20013求摄氏温度26C对应的华氏温度。计算公式如下,f=9*c/5+32,式中:c表示摄氏温度,f表示华氏温度。输入输出示例:celsius=26,fahr=78#include int main(void) i
3、nt celsius, fahr;/*-*/celsius=26;fahr=9*celsius/5+32; printf(celsius = %d, fahr = %dn, celsius, fahr);return 0;20015当n为152时,分别求出n的个位数字(digit1)、十位数字(digit2)和百位数字(digit3)的值。输入输出示例:整数152的个位数字是2,十位数字是5,百位数字是1#include int main(void) int n,digit1,digit2,digit3;n=152;digit1=n%10;digit2=(n/10)%10;digit3=n/1
4、00;/*-*/ printf(整数%d的个位数字是%d, 十位数字是%d, 百位数字是%dn, n, digit1, digit2, digit3);return 0;20026 输入2个整数 num1 和 num2,计算并输出它们的和、差、积、商与余数。输出两个整数的余数可以用 printf(%d % %d = %dn, num1, num2, num1%num2);输入输出示例:括号内是说明输入5 3 (num1=5,num2=3)输出5 + 3 = 85 - 3 = 25 * 3 = 155 / 3 = 15 % 3 = 2#include int main(void) int num
5、1,num2;/*-*/scanf(%d%d,&num1,&num2);printf(%d + %d = %dn,num1,num2,num1+num2);printf(%d - %d = %dn,num1,num2,num1-num2);printf(%d * %d = %dn,num1,num2,num1*num2);printf(%d / %d = %dn,num1,num2,num1/num2);printf(%d % % %d = %dn,num1,num2,num1%num2);return 0;第3周(M3)20031 求1+2+3+.+100(调试示例error02_5)计算表
6、达式 1 + 2 + 3 + . + 100的值。输出示例:sum = 5050#include int main(void) int i, sum; sum=0;for(i=1;i=100;i+)sum=sum+i; printf(sum = %dn, sum);20032 求m+(m+1)+(m+2)+.+100输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数m(0=m=100),计算表达式 m + (m+1) + (m+2) + . + 100的值。输入输出示例:括号内为说明输入3(repeat=3)0(计算0+1+2+.+100)10(计算1
7、0+11+12+.+100)50(计算50+51+52+.+100)输出sum = 5050sum = 5005sum = 3825#include int main(void) int i, m, sum; int repeat, ri; scanf(%d, &repeat); for(ri = 1; ri = repeat; ri+) scanf(%d, &m);sum=0; for(i=m;i=100;i+)sum=sum+i;/*-*/ printf(sum = %dn, sum); 20033 求1/m1/(m+1)1/(m+2).1/n输入一个正整数repeat (0repeat1
8、0),做repeat次下列运算:输入2个正整数 m 和 n(m=n),计算表达式 1/m + 1/(m+1) + 1/(m+2) + . + 1/n的值,输出时保留3位小数。输入输出示例:括号内为说明输入3 (repeat=3)5 15 (计算1/5+1/6+1/7+.+1/15)10 20 (计算1/10+1/11+1/12+.+1/20)1 3 (计算1+1/2+1/3)输出sum = 1.235sum = 0.769sum = 1.833#include int main(void) int i, m, n; int repeat, ri; double sum; scanf(%d, &
9、repeat); for(ri = 1; ri = repeat; ri+) scanf(%d%d, &m, &n); sum=0;for (i=m; i=n; i+)sum=sum+1.0/i; printf(sum = %.3fn, sum); 20034 求1 + 1/3 + 1/5 + .的前n项和输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数 n,计算表达式 1 + 1/3 + 1/5 + . 的前 n 项之和,输出时保留6位小数。输入输出示例:括号内为说明输入2(repeat=2)5(计算1+1/3+1/5+1/7+1/9)23(计算1
10、+1/3+1/5+.+1/45)输出sum = 1.sum = 2.#include int main(void) int i, n;int denominator; int repeat, ri; double sum; scanf(%d, &repeat); for(ri = 1; ri = repeat; ri+) scanf(%d, &n); sum=0;denominator=1;for(i=1;i=n;i+)sum=sum+1.0/denominator;denominator=denominator+2; printf(sum = %.6fn, sum); 20035 求11/4
11、1/71/10的前n项之和输入一个正整数repeat (0repeat10),做repeat次下列运算:读入一个正整数 n,计算11/41/71/10的前 n 项之和,输出时保留3位小数。输入输出示例:括号内是说明输入2 (repeat=2)310输出sum = 0.893sum = 0.819#include int main(void) int flag, i, n, t; int repeat, ri; double item, sum; scanf(%d, &repeat); for(ri = 1; ri = repeat; ri+) scanf(%d, &n); sum=0;flag
12、=1;t=1;for(i=1;i=n;i+)item=flag*1.0/t;sum=sum+item;flag=-flag;t=t+3;/*-*/ printf(sum = %.3fn, sum); 20036 输出华氏-摄氏温度转换表(改错题error02_6)输入一个正整数repeat (0repeat10),做repeat次下列运算:读入2个整数 lower 和 upper,输出一张华氏摄氏温度转换表,华氏温度的取值范围是lower, upper,每次增加2F。计算公式:c = 5 * (f - 32) / 9,其中:c表示摄氏温度,f表示华氏温度。输出请使用语句 printf(%3.0
13、f %6.1fn, fahr, celsius);输入输出示例:括号内是说明输入2 (repeat=2)32 35 (lower=32,upper=35)40 30 (lower=40,upper=30)输出fahr celsius 32 0.0 34 1.1fahr Celsius#include int main(void) int lower, upper; int repeat, ri; double celsius, fahr; scanf(%d, &repeat); for(ri = 1; ri = repeat; ri+) scanf(%d%d, &lower, &upper);
14、 printf(fahr celsiusn); for(fahr=lower;fahr=upper; fahr+, fahr+)celsius=5*(fahr-32)/9;printf(%3.0f%6.1fn,fahr,celsius);/*-*/20038 求x的n次幂输入一个正整数repeat (0repeat10),做repeat次下列运算:读入1 个实数x和正整数 n(n=50),计算并输出 x 的 n 次幂(保留2位小数),不允许调用pow函数求幂。输入输出示例:括号内是说明输入2 (repeat=2)1.5 2 (x=1.5,n=2)2 7 (x=2,n=7)输出2.25128.0
15、0#include int main(void) int i, n; int repeat, ri; double mypow, x; scanf(%d, &repeat); for(ri = 1; ri = repeat; ri+) scanf(%lf%d, &x, &n);mypow=1;for(i=1;i=n;i+)mypow=mypow*x;/*-*/ printf(%.2fn, mypow);20041 生成 3 的乘方表输入一个正整数n,生成一张3的乘方表,输出30 3n的值,可调用幂函数计算3的乘方。输出使用语句 printf(pow(3,%d) = %.0fn, i, mypo
16、w);输入输出示例:括号内是说明输入3(n=3)输出pow(3,0) = 1pow(3,1) = 3pow(3,2) = 9pow(3,3) = 27#include #include int main(void) int i, n; double mypow; scanf(%d, &n);for(i=0;i=n;i+) mypow=pow(3,i);printf(pow(3,%d) = %.0fn, i, mypow);20044 求1000.51010.510000.5计算 1000.51010.510000.5的值(保留2位小数),可调用sqrt函数计算平方根。输入输出示例:括号内是说明
17、输出sum = 20435.99#include #include int main(void) int i; double sum;sum=0;for(i=100;i=1000;i+) sum=sum+sqrt(i);/*-*/ printf(sum = %.2fn,sum);20053 计算物体自由下落的距离一个物体从 100m 的高空自由落下,编写程序,求它在前 3s 内下落的垂直距离(结果保留2位小数)。设重力加速度为10米/秒2。#include int main(void) double height; height=0.5 * 10 * 3* 3; /*-*/ printf(he
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2009 学期 语言 上机 练习 答案 汇总 62
限制150内