C语言程序设计课后习题作业.docx
C语言程序设计课后习题作业 第一章习题 1、对C语言来说,下列标示符中哪些是合法的,哪些是不合法的? Total, _debug, LargeTall, Counter1, begin_ 答:合法的:_debug、Counter1、begin_。 不合法的:Total、LargeTall。 2、改写1.4节中的流程图1.2,求1100中能被6整除的所有整数的和。 3、改写1.4节中的程序,求1100中能被6整除的所有整数的和,并在编程环境中验证该程序的运行结果。 答:程序为: #include int main(void) int i,sum=0; for(i=1;i1),请设计一个流程图判别n是否为一个素数(只能被1和自己整除的整数),并分析该流程图中哪些是顺序结构、哪些是分支结构和循环结构。 第二章作业 1编写程序,输入两个整数num和num2,计算并输出她们的和、差、积、商。 答:程序: #include void main() int num1,num2,y1,y2,y3,y5; double y4; printf("请输入两个数:num1,num2n"); scanf("%d%d",&num1,&num2); y1=num1+num2; y2=num1-num2; y3=num1*num2; y4=num1*1.0/num2; y5=num1%num2; printf("num1,num2和y1=%dnnum1,num2差y2=%dnnum1,num2积y3=%dnnum1,num2商y4=%lfnnum1,num2余y5=%dn",y1,y2,y3,y4,y5); 2为了倡导居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时以内的,电价为0.53元/千瓦时;超出50千瓦时的用电量,电价上调0.05元/千瓦时。编写程序,输入用户的月用电量(千瓦时),计算并输出该用户应支付的电费(元)。 答:程序: #include void main() double x,y; printf("请输入月用电量:xn"); scanf("%lf",&x); if(xc&&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三角形的面积area=%.2lfn",perimeter,area); 2、 #include #include void main() double salary,tax,rate; printf("请输入职工的月薪:salaryn"); scanf("%lf",&salary); if(salary=90) A+; else if(score>=80) B+; else if(score>=70) C+; else if(score>=60) D+; else E+; printf("平均成绩=%lfn",total/n); printf("等级成绩个数:nA=%dnB=%dnC=%dnD=%dnE=%dn",A,B,C,D,E); 5、 #include void main() int year; printf("21世纪所有的闰年:n"); for(year=2000;year=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=1; for(i=1;i<=n;i+) result=result*i; return result; 3、 #include"stdio.h" int main(void) int x,a,count,sum; printf("请输入一个整数x:n"); scanf("%d",&x); sum=0;count=0; if(x<0) x=-x; do a=x%10; sum=sum+a; x=x/10; count+; while(x!=0); printf("位数=%dn",count); printf("各个位数之和为:%dn",sum); return 0; 5、 #include"stdio.h" void main() int a,n,i=1,s=0,t=0; printf("请输入两个正整数a,n=:n"); scanf("%d%d",&a,&n); while(i<=n) t=t+a; s=s+t; a=a*10; +i; printf("a+aa+aaa+aaa=%dn",s); 7、 #include"stdio.h" void main() int i,j,k,l,n; printf("1-10000之间的水仙花数有: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、 #include"stdio.h" #include"math.h" void main() int i,n,m,j,k; i=0; printf("请输入一个多位整数:n"); scanf("%d",&n); k=n; while(k!=0) i+;