浙工大C语言复习题与参考答案 联系客服

发布时间 : 星期二 文章浙工大C语言复习题与参考答案更新完毕开始阅读b1eca04b76eeaeaad1f330ac

20 C程序设计习题集

5 编程题

1. 编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。

2.一个数如恰好等于它的因子之和,这个数就称为“完数”。编程序找出1000以内的所有完数,并输出其因子(6是一个\完数\,它的因子是1,2,3)。

3. 输入20个整数,输出其中能被数组中其它元素整除的那些数组元素。

4. 输入两个数组(数组元素个数自定),输出在两个数组中都出现的元素(如a[5]={2,3,4,5,6},b[6]={3,5,7,9,10,-1},则输出3、5)。 5. 编写函数,处理n行、n列的二维数组:将每一行的元素同除以该行上绝对值最大的元素。

6. 编写函数,求m行、n列的二维数组全体元素中负数的个数。 7. 编写函数,返回在一个整数组中出现次数最多的数及其出现次数。

8. 编写函数,在n个元素的一维数组中,找出最大值、最小值并传送到调用函数。 9. 编写函数,统计m行n列二维数组中有多少正数、多少个负数,多少个零,并返回统计结果。

10. 编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。

11. 把文本文件d1.dat复制到文本文件d2.dat中,要求仅复制d1.dat中的英文字符。 12. 编程,把文本文件d1.dat复制到d2.dat(其中大写英文字母要转换为小写字母)。 13. 求出1至100之间的素数(只能被1和自身整除的数)并顺序写入文件su.dat。 14.已知顺序文件C.DAT 存放着程序设计基础的考试成绩,每个记录包含学号(8位字符)和成绩(三位整数)两个数据。编程,从文件中读入学生成绩,将大于或等于60分的学生成绩再形成一个新的文件SCORE60.DAT保存在A盘上,并显示出学生总人数(少于1000)、平均成绩和及格人数。

C程序设计习题集 21

C语言程序设计复习题答案

1 单项选择题

1. B 2. D 3. C 4. D 5. B 6. B 7. D 8. A 9. C 10. D 11. B 12. C 13. D 14. A 15. A 16. D 17. C 18. B 19. B 20. A 21. C 22. B 23. D 24. B 25. D 26. C 27. C 28. A 29. A 30. C 31. C 32. D 33. C 34. C 35. A 36. D 37. B 38. D 39. A 40. C 41. B 42. C 43. A 44. C 45. D 46. C 47. A 48. B 49. B 50. A 51. D 52. D 53. C 54. D 55. B 56. B

2 填空题

1. 2.5 2. 16 3. 2 4. 0 5.0 6.sqrt(s*(s-a)*(s-b)*(s-c)) 7. (-b+sqrt(b*b-4*a*c))/2/a 8. p*pow(1+r,5) 9.(x+1)*exp(2*x) 10.ch>='A'&&ch<='Z' 11. abs(n)>9&&abs(n)<100 12. a!=0&&b!=0 13. a==-b 14. a==0&&b!=0||b==0&&a!=0 15. m%2==1&&m/10%2==0

16. 11、11、6 17. 4、4、10、6 18. 18、3、3 19. 20、15 20. (a>b)?a:b 21. –17 22. 'D' 23. 31 24. m=1b 25. small 26. 0 27.2 28. 30、0 29. s未定义初值0 30. jc存放10!字长不够

31. static int a[10]; 32. char a[10]=\34. int a[4][5],*p=a[0]; 35. windows 95 36. windows 95 37. 5 38. 7 39. windows 40. 8

41. printf(\44.1、7、1 45.0、707、-1 46.1、0、56 47. 值传递 48. 值传递 49. 地址传递 50. 值传递 51.7 52.17 53. 10、5 54. p=(int*)malloc(n*sizeof(int)); 55.free(p); 56.fseek(fp,25l,1);

3 写输出结果题

1. A C E G 2. K=8 3. 4 25 27 16 4. 1 0 2 2 5 7 13 20 5. SUM=2468 6. x|y&z=3 、x^y&~z=1、x&y&z=0、!x|x=1、~x|x=-1

22 C程序设计习题集 7. 2 4 6 9

20. 1 21. 256.000000 22. U=32.000v=18.000 23.a,d 24. 0 abc,def e ghi,mno 1 hi,no i

4 程序填空题

1. ⑴ \⑵ gbs%n!=0

⑶ m*n/gbs; ⑷ printf(\ 2. ⑴ int i,n; float nox; ⑵ nmin=no1;

⑶ &nox ⑷ else if(nox ⑵ for(i=0;i<20;i++) scanf(\ ⑶ pjz/=20; t=a[0]; ⑷ printf(\ 4. ⑴ int s1=0,s2=0; ⑵ ch=getchar()

⑶ ||ch>='A'&&ch<='Z' ⑷ prnitf(\

5. ⑴ #include ⑵ m,n,jc=1 ⑶ \⑷ n-2 6. ⑴ int i1,i2,i3 ⑵ i2=-45;i2<=45;i2++ ⑶ i1*i1+i2*i2+i3*i3==1989 ⑷ \ 7. ⑴ scanf(\⑵ (int*)malloc(n*sizeof(int)) ⑶ gbs%*(p+i)!=0 ⑷ goto l1;

8. ⑴ printf(\⑵ s=find(a,7,-1); \也可以改为其它负数 ⑶ t=*p; ⑷ return t; 9. ⑴ sort(a,7); ⑵ float *p,int n ⑶ *(p+j)>*(p+k) ⑷ t=*(p+i);

10. ⑴ &time.hour,&time.minute,&time.second

⑵ time.second ⑶ time.minute++; ⑷ time.hour==24 11. ⑴ ip-=11; ⑵ jg=3; ⑶ m[i]!=m[1] ⑷ i==12 ⑸ num-1 12. ⑴ float t; ⑵ else fh=1 ⑶ j

C程序设计习题集 23

13. ⑴ int i,flag=1; ⑵ if(fabs(s1-s2)

15. ⑴ flaot *a,int n,float x ⑵ int i; ⑶ t=t*x; ⑷ return y; 16. ⑴ float *p,float *max, float *min, int n ⑵ float t; ⑶ *min=*p; ⑷ t>*max

17. ⑴ flaot *a,int n ⑵ j=i+1;j ⑵ name[k]=ch[k]; ⑶ sort(name,6);

19. ⑴ FILE *fp; ⑵ int m,e,c,i,n; ⑶ fp=fopen(\⑷ fclose(fp);

5 编程题参考答案

1.编程,统计在所输入的50个实数中有多少个正数、多少个负数、多少个零。 #include \ #define N 50 void main()

{ float x; unsigned int s1,s2,s3,i; s1=s2=s3=0;

for(i=1;i<=N;i++) {

scanf(\ }

printf(\负数%u个,零%u个,正数%u个\\n\ }

2..编程,找出1000以内的所有完数,并输出其因子。 #include \ void main() { int i,j,s=1;

for(i=1;i<=1000;i++,s=1) {

for(j=2;j<=i/2;j++) if(i%j==0) s+=j; // 求 i的因子和 if(s==i) {

printf(\如果i 是完数则输出其各因子 for(j=2;j<=i/2;j++) if(i%j==0) printf(\ printf(\ } } }

3. 输入一个正整数,输出它的所有质数因子。 #include \ void main() { int m,i=2;