部分c语言习题答案

上传人:xzh****18 文档编号:34252761 上传时间:2018-02-22 格式:DOC 页数:21 大小:122KB
返回 下载 相关 举报
部分c语言习题答案_第1页
第1页 / 共21页
部分c语言习题答案_第2页
第2页 / 共21页
部分c语言习题答案_第3页
第3页 / 共21页
部分c语言习题答案_第4页
第4页 / 共21页
部分c语言习题答案_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《部分c语言习题答案》由会员分享,可在线阅读,更多相关《部分c语言习题答案(21页珍藏版)》请在金锄头文库上搜索。

1、部分习题答案第 1 章 C 程序知识初步答案略第 2 章 基本数据类型及其操作1判断题 2填空题 (1)int a;float b;char c;(2)3(3)double(4)a=1,b=2,c=3(5)0 整型(6)2(7)若有定义:int x=3,y=2;float a=2.5,b=3.5; 则表达式(x+y)%2+(int) a/(int)b 的值为 1 。(8)f 3选择题ACDDB DBACD4改错题(1)#include 改成 #include int celsius;fahr; 改成 float celsius,fahr;printf(“fahr=d,celsius=%dn”,

2、fahr,celsius); 改成 printf(“fahr=%f,celsius=%fn”,fahr,celsius);(2)printf(%dn,m/n+a); 改成 printf(%fn,m/n+a);printf(%fn,m%a+b); 改成 printf(%fn,m%(int)a+b);(3)下面程序中有两处错误,请查找并改正。#includevoid main () int m,n;float a,b;scanf(%d,%f,scanf(%d,%f,printf(%fn,m/n+a); printf(%fn,m%n+b) 改成 printf(%fn,m%n+b);5阅读程序(1)2

3、(2) * * * *(3)程序的功能:从键盘任意输入两个整数,输出它们的和。(4)26.7654326编程题(1)编程求华氏温度 50F 对应的摄氏温度 C。#include void main() float celsius,fahr;fahr=50;celsius=5*(fahr-32)/9;printf(fahr=%f,celsius=%fn,fahr,celsius);(2)编程从键盘输入一个数 a,求它的平方并输出。#include void main() int a,b;scanf(%d,b=a*a;printf(a=%d,b=%dn,a,b);(3)定义三个 int 型变量 x

4、、y、z, 从键盘读入 x、y,把 x 对 y 的余数赋给 z,并输出结果。#include void main() int x,y,z;scanf(%d%d,z=x%y;printf(%d 对%d 的余数为%dn,x,y,z);(4)定义两个整型变量并赋值,编程实现两个整型数的互换。#include void main() int x,y,t;x=3; y=4;t=x; x=y; y=t;printf(x=%d,y=%d n,x,y);(5)当 n 为 152 时,编程分别求出 n 的个位数(digit1)、十位数(digit2)和百位数(digit3)。#include void main

5、() int n,x,y,z;n=152;x=n/100;y=n/10%10;z=n%10;printf(%d 的百位、十位、个位分别为%d,%d,%dn,n,x,y,z);第 3 章 选择结构程序设计1选择题BCCCC DCADA2填空题(1)10.500000(2)优先级 结合性(3) ASCII (4)0.000000(5)0 1(6)(ch=a) & (ch=A) & (ch=0) & (chvoid main() int a ,b,max;scanf(“%d%d”,if(ab) max=a ;else max=b ;printf(“max=%dn”,max) ;如果输入 3 和 4,

6、则输出结果为 max=4(3)-1 (4)5(5)a=2,b=14改错题(1)scanf(“%c , %d , %d , %f ”, c , b , a , c ); 改成 scanf(“%c , %f , %d ”, printf(“%c , %d , %d , %f ”,c , b , a , c ); 改成 printf(“%c , %f , %d , %d ”,c , b , a , c );(2)if(xy) x=y;y=x; 改成 if(xy) x=y;y=x; else x=x+1;y=y+1; 改成 else x=x+1;y=y+1; 5编程题(1)计算以下分段函数 15.10

7、5.23/4)(xxfy#includevoid main()float x,y;scanf(%f,if (x#include void main()int t;scanf(%d,if (t%2=1) printf(%d 的平方根为%f,t,sqrt(t);else printf(%d 的立方根为%f,t,pow(t,1.0/3);(3)从键盘输入一个整数,判断该整数是否能同时被 3 和 7 整除。#includevoid main()int t;scanf(%d,if (t%3=0 else printf(%d 不能同时被 3 和 7 整除n,t); (4)输入一个英文字母,判断该字母是大写

8、字母还是小写字母。#includevoid main()char ch;ch=getchar();if (ch=a else printf(%c 是大写字母n,ch); (5)从键盘任意输入一个字符,如果它是英文字母,则以小写的形式输出,否则输出“它不是英文字母” 。#includevoid main()char ch;ch=getchar();if (ch=a else if (ch=A else printf(%c 不是英文字母n,ch); (6)从键盘输入 3 个整数 a、b、c,输出其中的最大数。#includevoid main()int a,b,c,max;scanf(%d%d%d

9、,if(ab)max=a;else max=b;if (maxvoid main()float x,y;scanf(%f,if (x=-10 else y=-10;printf(y=f(%f)=%f,x,y);(8)从键盘输入 4 个整数 a、b、c、d,按照由大到小的顺序输出。#includevoid main()int a,b,c,d,t;scanf(%d%d%d%d,/先找出 4 个数中最大数,并存放在变量 a 中 if (avoid main()int year,day,t;scanf(%d%d,switch(day)case 1:case 3:case 5: case 7:case

10、8:case 10:case 12: t=31; break;case 2:if (year%400=0)|(year%4=0 else t=28;break;default:t=30;printf(%d 年%d 月有%d 天n,year,day,t);(10)输入月薪 salary,输出应交的个人所得税 tax。计算公式为:tax=rate*(salary-2000)当 salary2500 时,rate=0;当 2500salary4000 时,rate=5%;当 4000salary7000 时,rate=10%;当 7000salary22000 时,rate=15%;当 22000s

11、alary42000 时, rate=20%;当 42000salary62000 时, rate=25%;当 62000salary82000 时, rate=30%;当 82000salary102000 时, rate=35%;当 102000salary 时,rate=40%;要求给出问题求解的算法,用流程图表示,并用程序实现。#includevoid main () float salary,tax;int rate;scanf(%f,if (salary2500 else if (salary4000 else if (salary7000 else if (salary22000

12、 else if (salary42000 else if (salary62000 else if (salary82000 else rate=40;tax=rate*0.01*(salary-2000);printf(%fn,tax);第 4 章 循环结构1选择题D ( CAA) AB (AD) BBCCB2填空题(1) 0 (2) -264 (3)354%10 354/100 354/10%10 (4) 结束整个循环 结束本次循环 (5) nvoid main() int x=012 , n=0;while (x) x-=2 ; n+; printf(“x= %d, n=%dn”, x

13、 , n ); x= 0,n=5(2)i=6,y=10(3)sum=288(4)K=4(5)1.6000004编程题(1)输入一个整数 n,并求 1-1/3+1/5- 的前 n 项和。#includevoid main() double a,sum=0;int i,m=1,n,j;printf(输入一个数:);scanf(%d,for(i=1;ivoid main() int a,b=0;for(a=1;avoid main()int j,n,t;scanf(%d,t=1;for(j=1;j#includevoid main()double x;int n;scanf(%lf,n=(int)

14、(x*x);printf(%d,n);(5)输入一个整数,从高位开始逐个数字输出。#include#includevoid main()int t,i;scanf(%d,i=4;do printf(%d ,t/(int)pow(10,i);t=t%(int)pow(10,i); i-;while (i=0); (6)输入一个正整数 n,再输入 n 个整数,输出最小值。#includevoid main() int n,min,i,x;printf(请输入一个整数 n:n);scanf(%d, printf(再输入 n 个整数:n);for(i=1;ivoid main()int i,j;for

15、(i=1;ivoid main()int i,j,k,t; t=3;for(i=1;ivoid main()int i,a,n,t,s;s=0;scanf(%d%d,t=a; /t 表示将要加入的数 for(i=1;ivoid main()float h,sum;int i;h=100; sum=100;for(i=1;ivoid main () int i,x,y; /x 表示某一天没吃之前桃子的数目, y 表示该天吃过之后剩下桃子的数目 y=1;i=9; /第 9 天吃过桃子之后,还剩下 y=1 个桃子while (i=1) x=2*(y+1);y=x;i-;printf(%dn,x);第 5 章数组 答案1、判断题:TFTFFTTF2、选择题:CCA

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题 > 高中试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号