2022年沈工大C语言程序设计复习题 .pdf
《2022年沈工大C语言程序设计复习题 .pdf》由会员分享,可在线阅读,更多相关《2022年沈工大C语言程序设计复习题 .pdf(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、- 1 - C语言程序设计复习题题型:填空、选择、读程序写结果(参看实验教程)、编程题编程题如下:1. 输出 1001000 以内的所有 3 位水仙花数。所谓水仙花数是指所有位的数字的立方和等于该数。例如153=13+53+33(实验教程 P25 )解:#include void main() int i; int w1,w2,w3; for(i=100;i999;i+) w1=i%10; w2=i/10%10;w1=i/100%10; if(i=w1*w1*w1+w2*w2*w2+w3*w3*w3) /* 判断是否是水仙花数*/ printf( “%d ” ,i ); 2. 使用冒泡法对从键
2、盘上输入的10 个数进行排序(由大到小) 。 (实验教程 P33 )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 20 页 - - - - - - - - - - 2 - 解:#include void main() int i,j,temp; int a10; printf(“Input 10 numbers:n”); for(j=0;j10;i+) scanf( “%d ”,&aj); printf(“n ”); for(i=1;i10;i+) for(j=0;j1
3、0-I;j+) if(ajaj+1) temp=aj; aj=aj+1; aj+1=temp; Printf(“The sorted numbers is:n”); for(j=0;j10;j+) printf(“%5d ”,aj); printf(“n ”); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 20 页 - - - - - - - - - - 3 - 3. 设计一个实用程序, 为比赛选手评分。 要求:从十名评委的评分中扣除一个最高分,扣除一个最低分,然后统
4、计总分,并除以8,最后得到这个选手的最后得分(打分采用百分制)。 (实验教程P37)解:分析:定义一个一维数组用来存放10 名评委为选手所给的成绩,从键盘上输入10 名评委所给的成绩,计算成绩的总和,然后减掉最高分和最低分,再除以8,就可以得到选手的最后得分。程序清单:#include void main() int score10; /*定义数组存放 10 个评委的成绩 */ float mark;int i;int max=0 ; /*最高分 */ int min=0 ; /*最低分 */ int sum=0 ; /*10评委的总和 */ for (i=0;i10;i+) /* 输入 10
5、 个评委的成绩 */ printf(“Please Enter the Score of No.%d:”,i+1) ;scanf ( “%d ” ,&scorei); sum=sum+scorei; /*将 10 个成绩求和 */ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 20 页 - - - - - - - - - - 4 - for(i=0;imax) max=scorei; for(i=0;i10;i+) /*查找最低分 */ if(scoreimin) mi
6、n=scorei; mark=(sum-max-min)/8.0; /*计算平均成绩 */ printf(“The mark of the player is %.2fn”,mark); 4. 在主函数中输 2100 之间的整数,调用函数判断其是否为素数,在主函数中输出这些素数。 (实验教程 P60 )提示:在第四章中的 4.4.5 中第 2 题给出了判断素数的方法。 还有一种方法就是:如果一个整数能被小于它的某一个整数出尽,该数一定不是素数。解:#include 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
7、 - - - - - - 第 4 页,共 20 页 - - - - - - - - - - 5 - void main() int i; for(i=2;ia;i+) if(a% i =0) return(0); return(1); void main() int j; for(j=2;j100;j+) if(is_ prime(j) printf(“n ”); 5. 使用递归方法,利用碾转相除法,求两个正整数的最大公约数,并在主函数调用该函数,输出计算结果。(实验教程 P64)解:#include Int gcd(int a,int b) 名师资料总结 - - -精品资料欢迎下载 - -
8、- - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 20 页 - - - - - - - - - - 6 - if(a% b=0) return b; else return gcd(b,a% b); /*递归调用 */ void main() int x,y,t; printf(“Please input 2 number(x,y):n”); scanf( “%d%d ”,&x,&y); while(x0|y1) 解:#include float fun(int n,int x); /*定义递归函数 */ int t; i
9、f(n=0) /*如果 n=0 返回 1*/ return(1);else if(n=1) /*如果 n=1 返回 x*/ return (x) ;else /*否则递归计算 */ return(2*n-1)*x*fun(n-1),x)-(n-1)*fun(n-2),x)/n; void main() int x,n; printf(“Please input n and x:n”); scanf( “%d%d ”,&n,&x); printf(“The result is:%fn”,fun(n,x); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -
10、- - - - - - 名师精心整理 - - - - - - - 第 7 页,共 20 页 - - - - - - - - - - 8 - 7编写程序,利用子函数实现计算字符串的长度。(实验教程 P92)解:程序代码如下:#include int length(char*s); void main() char a100; int i; printf(“ Please input the string:n” ); gets(a); i=length(a); printf(“ nThe length of string is %d” ,i); int length(char*s) char*p=
11、s; while(*p) p+; return(p-s); 8编写程序,利用字符串实现两个字符串的合并。(实验教程 P93)解:程序代码如下:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 20 页 - - - - - - - - - - 9 - #include “stdio.h”char *link(char*p1,char*p2); void main() char str1100,str2100; printf(“ Please input the first s
12、tring:n” ); gets(str1); printf(“ nPlease input the second string:n” ); gets(str2); link(str1,str2); printf(“ nThe linked result is:n” ); puts(str1); char*link(char*p1,char*p2) char*p; p=p1; while(*p1) pl+; while(*p2) *p1=*p2; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - -
13、- - 第 9 页,共 20 页 - - - - - - - - - - 10 - P1+; P2+; *p1=? 0 ? ; return(p); 9. 将一个整数字符串转换为一个整数,如“-1234”转换为-1234。 (实验教程 P98)解:#include #include int chnum(char*p); void main() char s6; int n; gets(s); if(*s=? -? ) n= -chnum(s+1); printf(“ %dn” ,n); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
14、 - 名师精心整理 - - - - - - - 第 10 页,共 20 页 - - - - - - - - - - 11 - chnum(char*p) int num=0,k,len,j; len=strlen(p); for(;*p!=? 0 ? ;p+) k=*p- ,0? ; j=(- -len); while(j-0) k=k*10; num=num+k; Return(num); 10. 编写计算个人所得税的程序输入一个纳税人的个人月收入,计算应纳的个人所得税。(程序设计教程P65)纳税是每个公民的义务。我国的个人所得税税率表如下表所示:级数应纳税金额(月收入-1600 )税率%
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年沈工大C语言程序设计复习题 2022 年沈工大 语言程序设计 复习题
限制150内