C语言编程题及答案

上传人:pu****.1 文档编号:510537138 上传时间:2023-12-23 格式:DOC 页数:100 大小:143.50KB
返回 下载 相关 举报
C语言编程题及答案_第1页
第1页 / 共100页
C语言编程题及答案_第2页
第2页 / 共100页
C语言编程题及答案_第3页
第3页 / 共100页
C语言编程题及答案_第4页
第4页 / 共100页
C语言编程题及答案_第5页
第5页 / 共100页
点击查看更多>>
资源描述

《C语言编程题及答案》由会员分享,可在线阅读,更多相关《C语言编程题及答案(100页珍藏版)》请在金锄头文库上搜索。

1、1请编写函数fun,其功能是:找出2M整型二维数组中最大元素的值,并将此值返回调用函数。int fun (int a M)int i,j,maxa00;for(i0;i2;i)for(j0;jM;j)if(maxeps)/*当某项大于精度要求时,继续求下一项*/s1s1sss1;/*求和*/n;return 23编写函数fun,其功能是:求出1到1000之间能被7或11整除,但不能同时被7和11整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。void fun(int *a,int *n)int i,j0;for(i1;iave0.0;for(i0;iaveaaveasi;/*

2、求各门成绩的总和*/aaveaave/N;/*求平均分*/7 N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun,其功能是:求出平均分,并由函数值返回。例如,若学生的成绩是:8576698591726487,则平均分应当是:78.625。double fun(STREC *h)double av0.0;STREC *phnext;/*p直接指向头结点的下一个结点,即第一个成绩*/while(p!NULL)avavps;/*求总分数*/ppnext;return av/N;/*返回平均值*/8编写函数fun,其功能是:将所有大于1小于整数m的非素数存入x

3、x所指数组中,非素数的个数通过k返回。例如,若输入17,则应输出:46891012141516。void fun(int m, int *k, int xx)int i,j,n0;for(i4;im;i)/*找出大于1小于整数m的非素数*/for(j2;ji;j)if(i%j0) break;if(ji) xxni;*kn;/*返回非素数的个数*/9编写函数fun,其功能是:求ss所指字符串中指定字符的个数,并返回此值。例如,若输入字符串123412132,输入字符为1,则输出3。int fun(char *ss, char c)int i0;for(;*ss!0;ss)if(*ssc) i;

4、/*求出ss所指字符串中指定字符的个数*/return i;10编写函数fun,其功能是:计算n门课程的平均分,结果作为函数值返回。例如:若有5门课程的成绩是:90.5,72,80,61.5,55,则函数的值为:71.80。float fun (float *a, int n)float av0.0;int i;for(i0;in;i)/*求分数的总和*/avavai;return (av/n);/*返回平均值*/11学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:把分数最高的学生数据放在b所指的数组中。注意:分数最高的学生可能不止一个,函

5、数返回分数最高的学生的人数。int fun (STREC *a, STREC *b)int i,j0,maxa0s;for(i0;iN;i)if(maxais) maxais;/*找出最大值*/for(i0;iN;i)if(maxais) bjai;/*找出成绩与max相等的学生的记录,存入结构体b中*/return j;/*返回最高成绩的学生人数*/12规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其它*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的内容为:*A*BC*DEF*G*,删除后,字符串中的内容应当是:*

6、ABCDEFG。void fun(char *a)int i0;char *pa;while(*p&*p*)ai*p;i;p;while(*p)if(*p!*)ai*p;i;p;ai0;13编写函数void fun(char *tt,int pp),统计在tt所指的字符串中a到z26个小写字母各自出现的次数,并依次放在pp所指的数组中。例如,当输入字符串abcdefgabcdeabc后,程序的输出结果应该是:3 3 3 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0void fun(char *tt, int pp)int i;for(i0;ia&*

7、ttz) pp*tta; 14规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。例如,字符串中的内容为:*A*BC*DEF*G*,删除后,字符串中的内容应当是:*A*BC*DEF*G。在编写函数时,不得使用C语言提供的字符串函数。void fun (char *a);while(*a!0) a;a;/*指针a指向字符串的尾部*/while(*a*) a;/*指针a指向最后一个字母*/*(a1)0; /*在字符串最后加上结束标志符*/15编写函数fun,其功能是:比较字符串的长度,(不得使用C语言提供的求字符串长度的函数),函数返回

8、较长的字符串。若两个字符长度相同,则返回第一个字符串。例如,输入beijingshanghai(为回车键),函数将返回shanghai。char *fun(char *s, char *t)int i,j;for(i0;si! 0;i); /*求字符串的长度*/for(j0;tj! 0;j);if(ij)/*比较两个字符串的长度*/return s;/*函数返回较长的字符串,若两个字符串长度相等,则返回第1个字符串*/else return t;16学生的记录由学号成绩组成,N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:函数返回该学号的学生数据,指定的学号在主函数中

9、输入。若没找到指定学号,在结构体变量中给学号置空串,给成绩置1,作为函数值返回。(用于字符串比较的函数是strcmp)。STREC fun(STREC *a, char *b)int i;STREC str0,1;/*若没找到指定的学号,在结构体变量中给学号置空串,给成绩置1) if(strcmp(ainum,b)0) /*找到指定学号的学生数据*/strai;return str;/*返回学生记录*/17编写函数fun,其功能是:将两个两位数的正整数a、b合并成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。例如,

10、当a45,b12时,调用该函数后,c 5142。void fun(int a,int b,long *c)*cb%10(a/10)*10(b/10)*100(a%10)*1000;18编写函数fun,其功能是:利用下面的简单迭代方法求方程cos(x)x0的一个实根。xn1cos(xn)迭代步骤如下:(1)取x1初值为0.0;(2)x0x1,将x1的值赋给x0;(3)x1cos(x0),求出一个新的x1;(4)若x0x1的绝对值小于0.000001,执行步聚(5),否则执行步聚(2);(5)所求x1就是方程cos(x)x0的一个实根,作为函数值返回。程序将输出结果Root0.739086。float fun()float x10.0,x0;do

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

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号