编一个函数fun(char s),函数的功能是把字符串中的内容逆置。

鸟欲高飞先振翅,人求上进先读书。——李苦禅
1. 编一个函数fun(char *s),函数的功能是把字符串中的内容逆置。
例子如:字符串中原有的内容为:abcdefg,则调用该函数后,串中的内容为:gfedcba。(难度:A-)
2. 编写一函数,实现矩阵(N行N列)的转置(即行列互换)。(难度:B+)
3. 输入四个整数,按从大到小的顺序排列。
要求:采用顺序语句,不能用循环实现. (难度:B+)
4. 编写一程序,求1!/2!+2!/3!+...+(N-1)!/N!,要求采用递归函数实现。(难度:A+)
5. 编写函数fun,函数的功能是:从字符串中删除指定的字符。同一字母的大、小写按不同字符处理。
若程序执行时,输入字符串为:turbo c and Borland c++
从键盘上输入字符:n,则输出后变为:turbo c ad borlad c++
如果输入的字符串不存在,则字符串照原样输出。(难度:A-)
6. 请编写函数fun,函数的功能是求出二维数组周边元素之和,作为函数值返回。二维数组中的值在主函数中赋予。
例如:
1 3 5 7 9
2 9 9 9 4
6 9 9 9 8
1 3 5 7 0
待求结果:61
数组的行为N,列为M. (难度A)
7. 请编写函数fun,对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。例如,原来的字符串为CEAedca,排序后输出为CedcEAa。(难度A)
8. 请编写函数fun,函数的功能是:在字符串中所有数字字符前加一个$字符。
例如,输入:A1B23CD45,则输出为:A$1B$2$3CD$4$5。(难度A-)
9. 请编写函数fun,它的功能是:求出ss所指字符串中、指定字符的个数,并返回此值。
例如:若输入字符串:123412132,输入字符为:1,则输出:3。
(难度B+)
10. 编写一个函数fun,它的功能是:实现两个字符串的连接(不使用库函数strcat)(难度B).
11. m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平均分的人数和数据返回。
例如,当score 数组中的数据为:10、20、30、40、50、60、70、80、90、时,函数返回的人数应该是4,below中的数据应为:10、20、30、40。
float average(float score[],int m) //求平均
func(float score[],int m,float below[],int * n)
//score为输入的成绩,m是数组score元素的个数,below数组存放低于平均数的成绩数据,n是低于平均数的个数
(难度A+)
12. 请编写一个函数void fun(char a[],int k,int n),其功能是:删除字符串中指定下标开始的n 个字符。其中,a指向字符串,k中存放指定的下标。
例如,字符串内容为:Hellollo World!,k中值为:5,n中的值为:3,则调用该函数的结果为:Hello World!。(难度A)
13.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?编写一程序将它

输出。(难度B+)
14. 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于
40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?(难度A)

15. 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数(除'#'外)。(难度B)
16. 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字,共n项.
a和n都是待输入数据。(难度B)



17. 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前n项之和.n为待输入的项数。(难度B).
18. 求1+2!+3!+...+20!的和.用递归函数实现。(难度B).
19. 求100之内的素数. (难度B).
20.输入一个5位数整数,如67889,按逆序输出98876.(难度B)
21. 输入3个数a,b,c,按大小顺序输出。要求采用指针实现。(难度B+)
22. 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组.数组长度为M.(难度B+)
23. 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度.不能采用strlen函数。(难度B)
24. 编写input()和output()函数输入,输出5个学生的数据记录.
#define N 5
struct student
{ char num[6];
 char name[8];
 int score[4];
} stu[N];
input(struct student stu[]) //输入学生数据
output(struct student stu[]) //输出学生数据 (难度A)

25.输入一成绩数组a[N],N=10,要写一函数找出大于平均成绩的最小数和小于平均成绩最大数. 采用全局变量实现。
例如:a[N]={62,71,82,89,90,59,88,65,84,96},
平均成绩为77.则82和71就是待求的数。(难度A)
26.编写一函数printout,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num、name、score[3],在main中输入数据,用printout函数输出。(难度A-)
#define N 5
struct student
{
int num;
char name[10];
float score[3];
} stud[N];
printout(struct student stud[])
27.有10个学生,每个学生的数据包括学号、姓名、3门课程成绩,从键盘输入10个学生成绩,要求分别打印3门课平均成绩,以及最高总分学生数据(包括学号,姓名,3门成绩和平均成绩)(难度A+)
#define N 10
struct student
{
int num;
char name[10];
float score[3];
} stud[N];
InputRecord(struct student stud[]); //输入学生数据
GetAvage(float * f1,float *f2,float *f3);//得到3门课平均成绩
GetTopstudent(struct student *topstudent);// 最高总分学生数据
28.输入一个无符号整数,编写一函数

将该整数的第n位清0.
例如1652 二进制编码 0000011001110100
最低位为第0位,最高位为第15位,将第5位清0,则
0000011001010100 ,应用位运算 (难度为A+).
29.从键盘输入一字符串到字符数组a中,将字符串前一半升序排列,后一半降序排列重新存放到数组a中。(难度为A+).
30.输入10个整数到数组a[10],将前一半升序排列,后一半降序排列重新存放到数组a中。(难度为A+).
31. 某地刑侦大队涉及4个嫌疑人的一桩疑案进行分析:
> A、B至少有一人作案;
> A、B、C三人不可能同时作案;
> B、C或同时作案,或与本案无关;
> C、D中最多有一人作案,肯定不是C;
试编一程序,找出所有可能作案的组合. (难度为A+).


32. 有一分数序列:1/1,2/5,3/10,4/17,5/26,...求出这个数列的前10项之和 (难度为B+)
33. 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。 (难度为B+)
34.插入一个数到一个排序好的数组中,并按原来的排序存放。

鸟欲高飞先振翅,人求上进先读书。——李苦禅
例如:90,80,70,60,50,40,30,20插入45则插入后的数组应为
90,80,70,60,50,45,40,30,20 (难度为A-)
35.输入一组数据到数组中,编写一函数查找值最大数组元素和最小数组元素的下标 (采用全局变量实现)。 (B+)
36.输入一组成绩到数组中,编写一函数查找并返回与平均值最接近的元素下标。 (A-)
37.输入一字符串,编写一函数查找子串出现的次数。
例如:
输入:"Jkok jadsfookmnco"
查找:"ok"
次数:2
可如下定义:Searchsubstr(char * s1,int n,char * s2)
s1待查找子串,n为s1的长度,s2为子串. (A+)
38. 输入一字符串,编写一函数将字符串中"ok"子串全部替换为"No".
例如:
输入:"Jkok jadsfookmnco"
结果:"JkNo jadsfoNomnco"

鸟欲高飞先振翅,人求上进先读书。——李苦禅

相关文档
最新文档