C语言程序设计(何钦铭)课后习题作业.pdf
《C语言程序设计(何钦铭)课后习题作业.pdf》由会员分享,可在线阅读,更多相关《C语言程序设计(何钦铭)课后习题作业.pdf(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言程序设计(何钦铭)课后习题作业第一章习题1、对 c 语言来说,下列标示符中哪些是合法的,哪些是不合法的?Total,_debug,Large&Tall,Counterl,begin_答:合法的:_debug、Counterl begin_o不合法的:TotaK Large&Tallo2、改写1,4节中的流程图1.2,求 1-1 0 0 中能被6 整除的所有整数的和。3、改写1.4节中的程序,求 1100中能被6 整除的所有整数的和,并在编程环境中验证该程序的运行结果。答:程序为:#include<stdio.h>int main(void)(int i,sum=0;for(i
2、=l;i<=100;i+)if(i%6=0)sum=sum+i;printf(sum=%dn,sum);return 0;)4、对于给定的整数n(n>l),请设计一个流程图判别n 是否为一个素数(只能被1 和自己整除的整数),并分析该流程图中哪些是顺序结构、哪些是分支结构和循环结构。第二章作业1.编写程序,输入两个整数num和 num 2,计算并输出她们的和、差、积、商。答:程序:#include<stdio.h>void main()(int numl,num2,yl,y2,y3,y5;double y4;printf(请输入两个数:numl,num2n);scanf
3、(%d%d,&numl,&num2);yl=numl+num2;y2=numl-num2;y3=numl*num2;y4=numl*1.0/num2;y5=numl%num2;printf(numl,num2 和 yl=%dnnuml,num2 差 y2=%dnnuml,num2 积y3=%dnnuml,num2 商 y4=%lfnnuml,num2 余 y5=%dn,yl,y2,y3/y4,y5);2.为了倡导居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时以内的,电价 为 0.53元/千瓦时;超 出 50千瓦时的用电
4、量,电价上调0.05元/千瓦时工编写程序,输入用户的月用电量(千瓦时),计算并输出该用户应支付的电 费(元)。答:程序:#include<stdio.h>void main()(double x,y;printf(请输入月用电量:xn);scanf(%lf,&x);if(x<=50)y=0.53*x;printf(电费 y=%lfn,y);)else y=0.58*x;printf(应支付电费 y=%lfn,y);)3.编写程序,输入实数x 和正整数n,计算xn,不允许调用pow()函数求幕。答:程序:#include<stdio.h>void main(
5、)double x,power;int i,n;printf(请输入:x,nn);scanf(%lf%d,&x,&n);power=1.0;for(i=l;i<=n;i+)power=power*x;printf(power(x,n)=%lfn,power);4.编写程序,输入两个正整数m 和 n,求 (i2+l/i)(i从 m 到 n。)答:程序:#include<stdio.h>void main()(int i,m,n;double sum;sum=0;printf(input:m,nn);scanf(%d%d,&m,&n);for(i=
6、m;i<=n;i+)sum=sum+(i*i+1.0/i);printf(sum=%lfn,sum);)5.编写程序,输入一个正整数n,计算1-2/3+3/5-4/7+5/9-6/11+?的前n 项之和。答:程序:#include<stdio.h>void main()(int i,n;double sum,item,flag;flag=l;sum=O;printf(input:nn);scanf(%d,&n);for(i=l;i<=n;i+)item=(flag*i)/(2*i-l);flag=-flag;sum=sum+item;printf(sum=%lf
7、n,sum);)6.某用户为购房办理商业贷款,选择了按月等额本息还款法,计算公式如下,在贷款本金(loan)和月利率(rate)一定的情况下,住房贷款的月还款(money)取决于还款月数(month)o客户打算在530年的范围内选择还清贷款的年限,想得到一张“还款年限一月还款额表”以供参考。编写程序,输入贷款本金loan和月利率ra te,输 出“还款年限一月还款额表”,还款年限的范围是530年,输出时分别精确到年和元。Money=loan*rate(l+rate)month/(l+rate)month-l答:程序:#include<stdio.h>#include<math
8、.h>void main()(int lower,upper,month,year,loan;double money,rate;lower=5;upper=30;printf(请输入贷款本金:loann);scanf(%d,&loan);printf(请输入月利率:raten);scanf(%lf,&rate);printf(还款年限 t月还款额n);for(year=lower;year<=upper;year+)(month=year*12;money=(loan*rate*pow(l+rate),month)/(pow(l+rate),month)-l);p
9、rintf(%dtt%lfn,year,money);)7.编写程序,输入一个正整数n,求2i(i从1到n),可调用pow()函数求累。答:程序:#include<stdio.h>#include<math.h>void main()(int i,n;double sum,item;sum=0;printf(input:nn);scanf(%d,&n);for(i=0;i<=n;i+)(item=pow(2,i);sum=sum+item;printf(sum=%lfn,sum);)8.编写程序,输入一个正整数n,求6=(i从。到n)。要求定义和调用函数f
10、act(n)计算n!,函数类型是double.答:程序:#include<stdio.h>double fact(int n);void main()int i,n;double sum;sum=0;printf(input:nn);scanf(%d,&n);for(i=0;i<=n;i+)(sum=sum+fact(i);printf(sun=%lfn,sum);double fact(int n)(int i;double product;product=1.0;for(i=l;i<=n;i+)product=product*i;return product
11、;)第三章作业1.#include<stdio.h>#include<math.h>void main()(int a,b,c;double s,area,perimeter;printf(请输入三角形三条边:a,b,cn);scanf(%d%d%d,&a,&b,&c);if(a+b>c&&a+c>b&&b+c>a)perimeter=a+b+c;s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(三角形的周长perimeter=%.2lfn三角形
12、的面积area=%,2lfn,perimeter,area);)2、#include<stdio.h>#include<math.h>void main()double salary,tax,rate;printf(请输入职工的月薪:salaryn);scanf(%lf,&salary);if(salary<=850)rate=0;else if(salary<=1350)rate=5;else if(salary<=2850)rate=10;else if(salary<=5850)rate=15;else rate=20;tax=ra
13、te*(salary-850)/100;printf(职工应缴个人所得税tax=%.2lfn,tax);3、#include<stdio.h>void main()(double m,n,y;printf(请输入行驶里程(公里):mn等待时间(分钟):scanf(%lf%lf,&m,&n);if(m+n/5.0)<=3)y=10;else if(m+n/5.0)<=10)y=2*(m+n/5.0);nn);else y=2*10+3*(m+n/5.0-10);printf(乘客应付车费 y=%dn,(int)(y*10+0.5)/10.0);)4、#in
14、clude<stdio.h>void main()(int i,n,A,B,C,D,E;double score,total;printf(请输入一个数 n:n);scanf(%d,&n);total=0;A=0;B=0;C=0;D=0;E=0;for(i=l;i<=n;i+)printf(请输入第#%d 个学生成绩:n,i);scanf(%lf,&score);total=total+score;if(score>=90)A+;else if(score>=80)B+;else if(score>=70)C+;else if(score&g
15、t;=60)D+;elseE+;)printf(平均成绩=%lfn,total/n);printf(等级成绩个数:r)A=%dnB=%dnC=%dnD=%dnE=%dn,A,B,C,D,E);5、#include<stdio.h>void main()(int year;printf(21世纪所有的闰年:n);for(year=2000;year<3000;year+)if(year%4=0&&year%100!=01|year%400=0)printf(%dn,year);)第四章作业2、#includestdio.h#includemath.hdouble
16、 fact(int n);void main()(int i,n;double x,s;printf(请输入一个实数x:n);scanf(%lf,&x);s=0;i=l;while(pow(x,i)/fact(i)>=0.00001)s=pow(x,i)*1.0/fact(i)+s;i+;)printf(s=%.2lfn,s);)double fact(int n)int i;double result;result=l;for(i=l;i<=n;i+)result=result*i;return result;3、#includestdio.hint main(void)
17、int x,a,count,sum;printf(请输入一个整数 x:n);scanf(%d,&x);sum=0;count=0;if(x<O)x=-x;doa=x%10;sum=sum+a;x=x/10;count+;while(x!=0);printf(位数=%5己,count);printf(各个位数之和为:%dn,sum);return 0;)5、#includestdio.hvoid main()(int a,n,i=l,s=0,t=0;printf(请输入两个正整数a,n=:n);scanf(%d%d,&a,&n);while(i<=n)t=t+
18、a;s=s+t;a=a*10;+i;)printf(a+aa+aaa+.+aa.a=%dn,s);)7、#includestdio.hvoid main()(int i,j,k,l,n;printf(l-lOOOO之间的水仙花数有:n);for(n=10;n<10000;n+)(i=n/1000;j=n/100%10;k=n/10%10;l=n%10;if(i*1000+j*100+k*10+l=i*i*i+j*j*j+k*k*k+l*l*l)printf(%-5d,n);)printf(n);9、#includestdio.h#includemath.hvoid main()(int
19、i,n,m,j,k;i=0;printf(请输入一个多位整数:n);scanf(%d,&n);k=n;while(k!=0)(i+;k=k/10;)k=n;m=pow(10,i-l);printf(逐位输出:%d,n/m%10);printfC;);for(j=m/10;j>0;j=j/10)n=k/j;printf(%d,n%10);if(j!=l)printf(,);)11、#includestdio.hvoid main()(int p,r,n,m,temp;printf(请输入两个正整数:n);scanf(%d%d,&n,&m);if(n<m)(te
20、mp=n;n=m;m=temp;)p=n*m;while(m!=0)r=n%m;n=m;m=r;)printf(最大公约数为:%dn,n);printf(最小公倍数为:dn,p/n);13、#includestdio.hvoid main()(int ij;for(i=0;i<=3;i+)for(j=0;j<=2-i;j+)printf();for(j=0;j<=2*i;j+)printf(*);printf(n);for(i=0;i<=2;i+)for(j=0;j<=i;j+)printf();for(j=0;j<=4-2*i;j+)printf(*);p
21、rintf(n);第五章1.#include<stdio.h>#include<math.h>long fac(int njnt a)(long sum;if(n=l)sum=a;elsesum=(long)(pow(10,n-l)*a)+fac(n-l,a);return(sum);)main()int a,n,i;long temp,sum=0;printf(请输入一个数 a,nn);scanf(%d%d,&a,&n);for(i=l;i<=n;i+)(temp=fac(i,a);sum+=temp;)printf(它们的和是=%附”,sum)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 课后 习题 作业
限制150内