二级C题库程序.docx
- 文档编号:8627948
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:39
- 大小:27.22KB
二级C题库程序.docx
《二级C题库程序.docx》由会员分享,可在线阅读,更多相关《二级C题库程序.docx(39页珍藏版)》请在冰豆网上搜索。
二级C题库程序
1.请编写函数fun,其功能是:
找出2*M整型二维数组中最大元素的值,并将此值返回调用函数。
intfun(inta[][M])
{
inti,j,max=a[0][0];
for(i=0;i<2;i++)
for(j=0;j if(max max=a[i][j]; returnmax; } 2.请编写函数fun,其功能是: 根据以下公式求pai的值(要求精度0.0005,即某项小于0.0005时停止迭代。 )pai/2=1+1/3+1*2/3*5+...+...程序运行后,若输入精度0.0005,则程序应输出为3.14... doublefun(doubleeps) { doubles=1.0,s1=1.0; intn=1; while(s1>=eps) {s1=s1*n/(2*n+1); s=s+s1; n++; } return2*s; } 3.请编写函数fun,其功能是: 求出1到100之间能被7或11整除,但不能同时被7和11整除的所有整数,并将其放在a所指的数组中,通过n返回这些数的个数。 voidfun(int*a,int*n) { inti,j=0; for(i=1;i<=1000;i++) if((i%7==0||i%11==0)&&i%77! =0) a[j++]=i; *n=j; } 4.规定输入的字符串中只包含字母和*号。 编写函数fun,其功能是: 删除字符串中所有的*号。 编写函数函数时,不得使用C语言提供的字符串函数。 voidfun(char*a) { inti,j=0; for(i=0;a[i]! ='\0';i++) if(a[i]! ='*') a[j++]=a[i]; a[j]='\0'; } 5.编写函数fun,其功能是: 实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串的后面。 voidfun(charp1[],charp2[]) { inti,j; for(i=0;p1[i]! ='\0';i++); for(j=0;p2[j]! ='\0';j++) p1[i++]=p2[j]; p1[i]='\0'; } 6.某学生的记录由学号、8门课程成绩和平均分组成,学号、8门课程成绩已在主函数中给出,编写函数fun,其功能是: 求出该学生的平均分,并记录的ave成员中。 voidfun(STREC*a) { doubleave=0.0; inti; for(i=0;i a->ave=a->ave+a->s[i]; a->ave/=N; } 7.N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。 编写函数fun,其功能是: 求出平均分,并由函数值返回。 doublefun(STREC*h) { doubleave=0.0; STREC*p=h->next; while(p! =NULL) {ave=ave+p->s; p=p->next; } returnave/N; } 8.编写函数fun,其功能是: 将所有大于一小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。 voidfun(intm,int*k,intxx[]) { inti,j,n=0; for(i=4;i {for(j=2;j if(i%j==0)break; if(j } *k=n; } 9.编写函数fun,其功能是: 求ss所指字符串中指定字符的个数,并返回此值。 intfun(char*ss,charc) { inti=0; for(;*ss! ='\0';ss++) if(*ss==c) i++; returni; } 10.编写函数fun,其功能是: 计算n门课程的平均分,结果作为函数值返回。 floatfun(float*a,intn) { inti; floatav=0.0; for(i=0;i av=av+a[i]; return(av/n); } 11.学生的记录由学号成绩组成,N名学生的数据已放入主函数中的结构体数组s中,编写函数fun,其功能是: 把分数最高的学生的数据放在b所指的数组中。 注意: 分数最高的学生可能不止一个,函数返回分数最高的学生人数。 intfun(STREC*a,STREC*b) { inti,j=0,max=a[0].s; for(i=0;i if(max for(i=0;i if(max==a[i].s)b[j++]=a[i]; returnj; } 12.规定输入的字符串中只包含字母和*号。 编写函数fun,其功能是: 除了字符串前导的*号外,将串中其他*号全部删除。 编写函数函数时,不得使用C语言提供的字符串函数。 voidfun(char*a) { inti=0; char*p=a; while(*p&&*p=='*') { a[i]=*p; i++; p++; } while(*p) { if(*p! ='*') {a[i]=*p;i++;} p++; } a[i]='\0'; } 13.编写函数voidfun(char*tt,intpp[]),统计在tt所指的字符串中“a”到“z”26个小写字母各自出现的次数,并依次放在pp所指的数组中。 voidfun(char*tt,intpp[]) { inti; for(i=0;i<26;i++) pp[i]=0; for(;*tt! ='\0';tt++) if(*tt>='a'&&*tt<='z') pp[*tt-'a']++; } 14.规定输入的字符串中只包含字母和*号。 编写函数fun,其功能是: 将字符串尾部的*全部删除,前面和中间的*号不动。 voidfun(char*a) { while(*a! ='\0') a++; a--; while(*a=='*') a--; *(a+1)='\0'; } 15.编写函数fun,其功能是: 比较字符串的长度,不得使用C语言提供的求字符串长度的函数,函数返回较长的字符串。 若两个字符长度相同,则返回第一个字符串。 char*fun(char*s,char*t) { inti,j; for(i=0;s[i]! ='\0';i++); for(j=0;t[j]! ='\0';j++); if(i<=j) returnt; else returns; } 16.学生的记录由学号成绩组成,N名学生的数据已放入主函数中的结构体数组s中,编写函数fun,其功能是: 函数返回该学号的学生的数据,指定的学号在主函数中输入。 若没找到指定学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回。 STRECfun(STREC*a,char*b) { inti; STRECstr={"\0",-1}; for(i=0;i if(strcmp(a[i].num,b)==0) str=a[i]; returnstr; } 17.编写函数fun,其功能是: 将两个两位数的正整数a、b合并成一个整数放在c中。 合并的方式是: 将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。 voidfun(inta,intb,long*c) { *c=b%10+(a/10)*10+(b/10)*100+(a%10)*1000; } 18.编写函数fun,其功能是: 利用下面的简单迭代方法求方程cos(X)-x=0的一个实根。 Xn+1=cos(Xn) 迭代步骤如下: (1)取x1初值为0.0; (2)(3)(4)(5) doublefun() { doublex0,x1; x1=0.0; do { x0=x1; x1=cos(x0); }while(fabs(x0-x1)>=1e-6); returnx1; } 19.规定输入的字符串中只包含字母和*号。 编写函数fun,其功能是: 将字符串中的前导*号移到字符串的尾部。 voidfun(char*a) { inti=0,n=0; char*p; p=a; while(*p=='*') { n++;p++; } while(*p) { a[i]=*p;i++;p++; } while(n! =0) { a[i]='*';i++;n--; } a[i]='\0'; } 20.编写函数fun,其功能是: 将两个两位数的正整数a、b合并成一个整数放在c中。 将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。 voidfun(inta,intb,long*c) { *c=a/10+(b%10)*10+(a%10)*100+(b/10)*1000; } 21.编写函数fun,其功能是: s=根号下ln (1)+ln (2)+...+ln (m)s作为函数返回值。 doublefun(intm) { inti; doubles=0.0; for(i=1;i<=m;i++) s=s+log(i); returnsqrt(s); } 22.规定输入的字符串中只包含字母和*号。 编写函数fun,其功能是: 只删除字符前导和尾部的*号,串中字母间的*都不删除。 形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中尾部*号的个数。 在编写函数时,不得使用C语言提供的字符串函数。 voidfun(char*a,intn,inth,inte) { inti,j=0; for(i=h;i a[j++]=a[i]; a[j]='\0'; } 23.函数fun的功能是: 将s所指的字符串中下标为偶数的字符删除,剩余字符形成的新串放在t所指数组中。 voidfun(char*s,chart[]) { inti,j=0,k=strlen(s); for(i=1;i t[j++]=s[i]; t[j]='\0'; } 24.编写函数fun,其功能是: 将两个两位数的正整数a、b合并成一个整数放在c中。 将a数的十位和个位数依次放在c数的百位和个位上,b数的十位和个位数依次放在c数的十位和千位上。 voidfun(inta,intb,long*c) { *c=a%10+(b/10)*10+(a/10)*100+(b%10)*1000; } 25.假定输入的字符串中只包含字母和*号。 编写函数fun,其功能是: 除了尾部的号外,将字符中其它的*全部删除。 形参p已指向字符串中最后的一个字母。 在编写函数时,不得使用C语言提供的字符串函数。 voidfun(char*a,char*p) { char*t=a; for(;t<=p;t++) if(*t! ='*') *(a++)=*t; for(;*t! ='\0';t++) *(a++)=*t; *a='\0'; } 26.学生的记录由学号成绩组成,N名学生的数据已放入主函数中的结构体数组s中,编写函数fun,其功能是: 按分数降序排列学生的记录,高分在前,低分在后。 voidfun(STRECa[]) { inti,j; STRECt;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 题库 程序