《C程序设计编程题.pdf》由会员分享,可在线阅读,更多相关《C程序设计编程题.pdf(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-1-编号题目要求及代码描述参考答案补充说明1 题目要求:有一分数序列:2/1、-3/2、5/3、-8/5、13/8,求这个数列的前m(m=1 且 m=100)项之和,并将总和存放到变量sum 中,并输出 sum。(若程序已经定义的变量不够用,考生可以补充定义其它变量)题目已给出的框架如下:#include“stdio.h”main()int m;float sum;参考答案如下:#include“stdio.h”main()int m,i,sign=1;float sum=0,a=2,b=1,t;scanf(“%d”,&m);for(i=1;i=1并且m=100)项之和,并将总和存放到变量
2、sum 中,并输出之.(若程序已经定义的变量不够用,考生可以补充定义其它变量).题目已给出的框架如下:#include“stdio.h”main()int m,sum;参考答案如下:#include“stdio.h”main()int m,sum=0,i,b=0,s=1;scanf(“%d”,&m);for(i=1;i0)sum=sum+m%10;m=m/10;printf(“%d”,sum);整型数据求位数、及按位提取数字问题。4 题目要求:已知10 名学生的成绩已存入数组a中,计算前m位同学的平均成绩,并存入变量aver中,并输出之。例如,若m=2,则 aver=65。(若程序已经定义的变
3、量不够用,考生可以补充定义其它变量)。题目已给出的框架如下:#include“stdio.h”main()int m,a10=60,70,77,79,76,83,78,56,85,69;float aver;参考答案如下:#include“stdio.h”main()int m,i,a10=60,70,77,79,76,83,78,56,85,69;float aver=0;scanf(“%d”,&m);for(i=0;im;i+)aver=aver+ai;aver=aver/m;printf(“the aver is%f”,aver);主函数中直接对整型(实型)数组进行统计处理问题,例如:1
4、 求平均分;2 求最大值最小值;3 求高于平均分人数;5 题目要求:将输入的一行字符串(=a&ai=z)count+;printf(“the count is%d”,count);1 求字符串长度;2 求 字 符串中大写小写字母个数;36 题目要求:已知10 名学生的成绩已存入数组a中,求不低于m 分的人数,并存入变量count 中,并输出之。例如,若 m=60,则 count=5;若 m=80,则 count=2。(若程序已经定义的变量不够用,考生可以补充定义其它变量)。题目已给出的框架如下:#include“stdio.h”main()int m,a10=34,45,67,82,64,53
5、,67,90,49,56;int count;参考答案如下:#include“stdio.h”main()int m,a10=34,45,67,82,64,53,67,90,49,56;int count=0,i;scanf(“%d”,&m);for(i=0;i=m)count+;printf(“the count is%d”,count);无7 题目要求:从键盘输入的一行字符串(c&b+ca&c+ab)s=0.5*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“yes!andn”,area);else printf(“yes!n”);简单数学公式使
6、用的问题:1 判断润年;2 求方程的解;等等9 题目要求:编写一个名为fun 的函数将字符串中参考答案如下:使用自定义函数处理字符串-5-所有的大写字母转换成小写字母.例如,对于字符串”AAbbCC”,则会被转换成”aabbcc”.(不要改动已有的代码,仅在fun 的函数体中填写若干语句)题目已给出的框架如下:#include“stdio.h”fun(char w)main()char a20=“AAbbCC”;fun(a);puts(a);#include“stdio.h”fun(char w)int i;for(i=0;wi!=0;i+)if(wi=A&wi=Z)wi=wi+32;main
7、()char a 20=“AAbbCC”;fun(a);puts(a);问题,例如:1 大写 小写字母转换;2 字符串逆序存放;3 排序(升序、降序)。10 题目要求:编写一个名为fun 的函数,其功能为:将数组n 中的字符串拷贝至数组m 中.例如,在main 中调用 fun 以后,会输出”university”.(不允许用C 语言提供的strcpy 函数.)(不要改动已有的代码,仅在fun 的函数体中填写若干语句)题目已给出的框架如下:#include“stdio.h”fun(char m,char n)参考答案如下:#include“stdio.h”fun(char m,char n)in
8、t i;for(i=0;ni!=0;i+)mi=ni;mi=0;main()char a20,b20=“university”;fun(a,b);puts(a);使用自定义函数处理字符串问题,例如:1 字符串拷贝;2 把字符串 a追加到b 后。-6-main()char a20,b20=“university”;fun(a,b);puts(a);11 题目要求:编写一个名为fun 的函数实现一个字符串按逆序存放.例如:由 abcd 变为 dcba.(不要改动已有的代码,仅在fun 的函数体中填写若干语句)题目已给出的框架如下:#include“stdio.h”fun(char w)main()
9、char a20=“abcd”;fun(a);puts(a);参考答案如下:#include“stdio.h”fun(char w)int i,n,t;for(i=0;wi!=0;i+);n=i;for(i=0;i0;i-)wi=wi-1;w0=t;使用自定义函数处理整型(实型)数组置换问题。,例如:1 排序;2 逆序存放;3 有序数组中插入新的数后仍然有序。-7-fun(int w,int n)main()int i,a5=0,1,2,3,4;fun(a,5);for(i=0;i5;i+)printf(“%d,”,ai);main()int i,a5=0,1,2,3,4;fun(a,5);f
10、or(i=0;i=a&wi=A&wi=Z)(*p1)+;else(*p2)+;main()char a20=“aed234efg”;int letter,other;fun(a,&letter,&other);printf(“%d,%dn”,letter,other);使用指针,自定义函数统计字符串问题,例如:1 统 计 字符串中大写/小写字母个数;2统计字符串中字母/符号/数字个数。14 题目要求:编写一个名为fun 的函数实现计算数参考答案如下:使用指针,自定义函数处理整-8-组a 中n 个整数的最大数和最小数.例如,本题的main 函数应输出7,1.(不要改动已有的代码,仅在fun 的函
11、数体中填写若干语句)题目已给出的框架如下:#include“stdio.h”fun(int w,int n,int*p1,int*p2)main()int a5=1,2,3,4,7,max,min;fun(a,5,&max,&min);printf(“%d,%d”,max,min);#include“stdio.h”fun(int w,int n,int*p1,int*p2)int i;*p1=w0;*p2=w0;for(i=1;i*p1)*p1=wi;else if(wiwn-1)wn=m;else for(i=0;wi=t;i-)wi+1=wi;wt=m;main()无-9-m=35;fu
12、n(a,5,m);for(i=0;i6;i+)printf(“%d,”,ai);int a6=10,20,30,40,50,m,i;m=35;fun(a,5,m);for(i=0;i6;i+)printf(“%d,”,ai);16 题目要求:编写一个名为fun 的函数实现计算数组 a 中的 n 个学生成绩中小于平均分的人数,平均分按实型数考虑.例如,若有a5=50,60,70,80,90;,则fun 函数的返回值应为2.(不要改动已有的代码,仅在fun 的函数体中填写若干语句)题目已给出的框架如下:#include“stdio.h”fun(int w,int n)main()int a5=50
13、,60,70,80,90,count;count=fun(a,5);printf(“%d”,count);参考答案如下:#include“stdio.h”fun(int w,int n)int i,sum=0,m=0;float avg;for(i=0;in;i+)sum=sum+wi;avg=sum/n;for(i=0;in;i+)if(wiavg)m+;return m;main()int a5=50,60,70,80,90,count;count=fun(a,5);printf(“%d”,count);使用自定义函数对整型(实型)数组进行统计处理问题,例如:1 求平均分;2 求最大值最小
14、值;3 求高于平均分人数;4 统 计 问 题 和 置 换问 题 结合。17 题目要求:编写一个名为fun 的函数实现将数组a 的 n个整数中的最小数与最后面的数互换,而其它元素不变.例如,若有a5=34,1,2,56,4;,则 调用fun 函数后,数组元素的排列顺序为34,4,2,56,1.(不要改动已有的代码,仅在fun 的函数体中填写若干语句)参考答案如下:#include“stdio.h”fun(int w,int n)int i,min,j;min=w0;for(i=0;in;i+)最大数和第一个元素互换。-10-题目已给出的框架如下:#include“stdio.h”fun(int
15、w,int n)main()int i,a5=34,1,2,56,4;fun(a,5);for(i=0;i5;i+)printf(“%d,”,ai);if(wimin)min=wi;j=i;wj=wn-1;wn-1=min;main()int i,a5=34,1,2,56,4;fun(a,5);for(i=0;i5;i+)printf(“%d,”,ai);18 题目要求:编写一个名为fun 的函数根据一个学生一学期5 门课的成绩,判断学生是否优秀,优秀的条件是单科分都大于85 分,如果是优秀则函数返回1,否则返回0.本题的main 函数应输出”no good”.(不要改动已有的代码,仅在fun
16、 的函数体中填写若干语句)题目已给出的框架如下:#include“stdio.h”fun(int w,int n)main()int k,a5=34,56,72,99,80;k=fun(a,5);if(k=1)printf(“good”);else printf(“no good”);参考答案如下:#include“stdio.h”fun(int w,int n)int i,m=1;for(i=0;in;i+)if(wi=a&wi0;i-)wi=wi+wi-1;main()int i,a5=8,9,1,0,4;for(i=0;i5;i+)使用自定义函数对整型(实型)数组进行数学处理问题。-12
17、-main()int i,a5=8,9,1,0,4;for(i=0;i5;i+)printf(“%d“,ai);fun(a,5);printf(“n”);for(i=0;i5;i+)printf(“%d“,ai);printf(“%d“,ai);fun(a,5);printf(“n”);for(i=0;i5;i+)printf(“%d“,ai);21 题目要求:编写一个名为fun 的函数,判断给定的正整数是否是素数.素数的定义是:其因子只有1 和它本身.例如,7 就是素数.本题的 main 函数应输出Yes.(不要改动已有的代码,仅在fun 的函数体中填写若干语句)题目已给出的框架如下:#include“stdio.h”fun(int w)main()int m;m=7;if(fun(m)printf(“Yes”);else printf(“No”);参考答案如下:#include“stdio.h”fun(int w)int i;for(i=2;iw;i+)if(w%i=0)return 0;return 1;main()int m;m=7;if(fun(m)printf(“Yes”);else printf(“No”);使用自定义函数处理数学问题,例如:1 百鸡问题;2 古典数学问题。等等。
限制150内