C语言练习题库40题版答案.doc

上传人:h**** 文档编号:1228466 上传时间:2018-12-30 格式:DOC 页数:26 大小:196KB
下载 相关 举报
C语言练习题库40题版答案.doc_第1页
第1页 / 共26页
C语言练习题库40题版答案.doc_第2页
第2页 / 共26页
C语言练习题库40题版答案.doc_第3页
第3页 / 共26页
C语言练习题库40题版答案.doc_第4页
第4页 / 共26页
C语言练习题库40题版答案.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、好好学习1.将所有的水仙花数保存到维数组 a 中。(所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如:153=1*1*1+5*5*5+3*3*3)#includeint main()int s100=0;int i;int k=0;/表示水仙花数的个数。int a,b,c;for(i=100;iint main()int i;int k=1;int sum=0;for(i=1;iint main()void sort(int a,int m);int a100=1,22,55,8,9,29,3,5,244,24;int i;int x;sort(a,10);for(i=0;i=0

2、;i-)printf(“%d “,ai);好好学习void insert(int x,int a,int m)void sort(int a,int m) ;am-1=x;sort(a,m);/* 冒泡排序*/void sort(int a,int m) /m 表示数组的个数int i,j,t;for(i=0;iaj+1)t=aj;aj=aj+1;aj+1=t;4. 编写程序实现以下功能,能够将下面所示的 6*6 的二维矩阵读入并存储到二维数组中,并求其对角线之和,以及最大数,并输出最大数所在的行列下标。35 1 6 26 19 243 32 7 21 23 2531 9 2 22 27 20

3、8 28 33 17 10 1530 5 34 12 14 164 36 29 13 18 11#includeint main()int i,j;int a66=35, 1, 6, 26, 19, 24, 3 , 32 , 7 ,21, 23 , 25 , 31 , 9 , 2 , 22 , 27 , 20 , 8 , 28 , 33 ,17 , 10 , 15 , 30 , 5 , 34 , 12 , 14 , 16 , 4 , 36 , 29, 13 , 18 , 11;int max=a00;int col,row;int sum=0;for(i=0;i=max)max=aij;col

4、=j;row=i;printf(“max=%d,row=%d,col=%dn“,max,row,col);5. 对任意输入的 5 个字符数组进行排序比如:输入abc def fdc ccc efg得到abc ccc def efg fdc6. 求 2 个数组的交集输入5,6,7,9,102,3,4,5,6得到5,6#includeint main()int a5=5,6,7,9,10;int b5=2,3,4,5,6;int i,j;for(i=0;iint main()int m,n;int i,sum=0;printf(“请输入 m 和 n:“);scanf(“%d%d“,for(i=m;

5、iint main()char str100=“;int i=0; /str 的下标gets(str);while(stri!=0)i+;stri=stri+1;printf(“字符串长度为:%d“,i);9. 将字符串中所有的大写字母转换为小写,其它字符不变(不使用转换函数) 。例如,当字符串为“This Is a c Program“输出:“this is a c program“好好学习#includeint main()char str100=“;int i=0;printf(“请输入要转换的字符串:“);gets(str);while(stri!=0)if(stri=A printf

6、(“请输入分数:“);scanf(“%d“,if(scoreint main()int score;int class;printf(“请输入分数:“);scanf(“%d“,class=score/10;switch(class)case 9:printf(“优秀n“);break;case 8:case 7:printf(“良好n“);break;case 6:printf(“及格n“);break;default:printf(“不及格n“);break;11:若有 3 个字符串 s1.,s2,s3,其中,s1=“abcdef ”,好好学习s2=“123456”,要求用字符数组实现将 s

7、1 的内容复制到 s3 中,并将 s2 的内容添加在 s3 后面的功能,最后输出字符串 s3#includeint main()char s1100=“abcdef“;char s2100=“123456“;char s3200;int i=0;/表示 s1 下标int j=0;/表示 s2 下标while(s1i!=0)s3i=s1i;i+;while(s2j!=0)s3i=s2j;j+;i+;s3i=0;printf(“%s“,s3);12:编写一个通用函数 swap() ,在 main 函数中调用可以实现 2 个数的交换。#includeint main()void swap(int *

8、p1,int*p2);int a,b;scanf(“%d%d“,printf(“a=%d,b=%dn“,a,b);swap(printf(“a=%d,b=%dn“,a,b);void swap(int *p1,int*p2)int temp;temp=*p1;*p1=*p2;*p2=temp;13.设计程序输出如下的杨辉三角形(正三角形) ,共 6 行:好好学习#includeint main()int a715=0;int i,j;a07=1;for(i=1;iint main()int i=10000;while(1)i+;if(sushu(i) break;printf(“%d“,i);

9、int sushu(int x)int i;for(i=2;iint main()int i,j;for(i=1;i=j) printf(“%2d*%2d=%2d “,i,j,i*j);printf(“n“);16. 输入一个不超过五位的正整数, 输出其逆数。例如输入12345,输出应为 54321。#includeint main()int x;scanf(“%d“,while(x!=0)printf(“%d“,x%10);x=x/10;17.结合书上打印菱形的思想,打印出以下图形:abcdefghigklmnopqrstuvwxy好好学习#includeint main()int i,j,

10、k;int m=97;for(i=1; i0; j-)printf(“ “);for(k=1; k0; k-)printf(“%c“,m);m+;printf(“n“);18. 试用 C 语言求解“百钱百鸡”问题。百钱买百鸡, 鸡翁一值钱三,鸡母一值钱二,鸡雏三值钱一,问鸡翁、鸡母、鸡雏各几何?#includeint main()int x,y,z;int pos=0;for(x=1; xint main()int x,y,z;int pos=0;for(x=1; x=34; x+)for(y=1; y=50; y+)for(z=1; z=300; z+)if(3*x+2*y+z/3=100 break;if(pos=1) break;if(pos=1) break;printf(“=%d=%d=%d“,x,y,z);20. 编写一个函数 deletechar() ,使字符串中尾部的*号不得多于 n 个;若 多于 n 个,则删除多余的 *号;若少于或等于 n 个,则什 么也不做,字符串中间和前面的*号不删除。例如,字符串 的内容为:*A*BC*DEF*G*,若 n 的值为 4, 删 除 后 , 字 符 串 中 的 内 容 应 当 是 : *A*BC*DEF*G*;若 n 的值为 7,则字符串中的内 容仍为*A*BC*DEF*G*。n 的值在主函数中输 入。

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

当前位置:首页 > 教育教学资料库 > 试题真题

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。