C语言上级考试试题答案(打版本)

上传人:liy****000 文档编号:118875381 上传时间:2019-12-27 格式:DOC 页数:5 大小:73KB
返回 下载 相关 举报
C语言上级考试试题答案(打版本)_第1页
第1页 / 共5页
C语言上级考试试题答案(打版本)_第2页
第2页 / 共5页
C语言上级考试试题答案(打版本)_第3页
第3页 / 共5页
C语言上级考试试题答案(打版本)_第4页
第4页 / 共5页
C语言上级考试试题答案(打版本)_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《C语言上级考试试题答案(打版本)》由会员分享,可在线阅读,更多相关《C语言上级考试试题答案(打版本)(5页珍藏版)》请在金锄头文库上搜索。

1、第 5 页 共 5 页1到m之内(含m)能被7或11整除的整数放在数组a中。int i; *n=0;for(i=7;i=m;i+) if(i%7=0)|(i%11=0) a(*n)+=i;n以内(包括n)能被5或9整除的所有自然数的倒数之和。int i; double sum=0.0;for(i=1;i=n;i+) if(i%5=0|i%9=0) sum+=1.0/i; return sum;3与7整除的所有自然数之和的平方根s。double sum=0.0; int i;for(i=21;i=m) p=str;else p=t;return p;从传入num个字符串中找出最长的一个字符串。i

2、f(strlen(ai)maxlen)maxlen=strlen(ai); k=i;字符串中内容逆置。char bN; int i=0,j; memset(b,0,N);for(j=strlen(s)-1;j=0;j-) bi+=sj; strcpy(s,b);判断字符串是否为回文。int i,j=strlen(str);for(i=0;ij/2;i+)if(stri!=strj-i-1) return 0;return 1;对长度为7个字符的字符串,除首,尾字符外,将其余5个字符按ASCII码降序排列。char t; int i,j;for(i=1;in-2;i+)for(j=i+1;jn-

3、1;j+)if(stri)=a&*p=z) *p-=32; p+; i+;return ss;删除字符串中所有空格。char *p=str; int i=0;while(*p)if(*p!= ) stri+=*p; p+; stri= 0;从字符串中删除指定字符。char *p=s; int i=0;while(*p)if(*p!=c) si+=*p; p+;si= 0;删除字符串中指定下标的字符。strncpy(b,a,n); bn=0; strcat(b,a+n+1);s字符串中下标为偶数的字符删除,剩余字符放在t数组中。int i,j=0;for(i=1;istrlen(s);i+=2)

4、 tj+=si; tj= 0;s字符串中下标为偶数同时ASCII值为奇数的字符删除,剩余字符放在t数组中。int i,j=0;for(i=0;istrlen(s);i+) if(!(i%2)=0&(si%2) tj+=si; tj= 0;s字符串中除了下标为奇数同时ASCII值也为奇数的字符外,其余的都删除。int i,j=0;for(i=1;istrlen(s);i+=2) if(si%2) tj+=si; tj= 0; ss字符串中指定字符的个数。int cnt=0; char *p=ss;while(*p)if(*p=c) cnt+; p+;return cnt;统计一个长度为2的字符串

5、在另一个字符串中出现的次数。int cnt=0; char *p=str,*q;while(*p)q=strstr(p,substr);if(q=NULL) break;p=q+strlen(substr); cnt+;return cnt;统计字符串中a到z26个字母各自出现次数,放在pp数组中。char *p=tt; int i;for(i=0;i=a&*p=z) pp*p-a+=1; p+; 统计一行字符串中单词个数。int k=1;while(*s)if(*s= ) k+; s+; return k;两个字符串的连接。char *p=p1;while(*p) p+;while(*p2)

6、 *p+=*p2+; *p=0;移动字符串中内容,把第1到第m个字符,平移到字符串最后,把第m+1到最后的字符移到字符串前部。char bN; int i,j=0;for(i=0;im;i+) bj+=wi;for(i=0;istrlen(w)-m;i+) wi=wi+m;for(j=0;jm;j+) wi+=bj; wi= 0;计算n门课程的平均分。float ave=0.0; int i;for(i=0;in;i+) ave=ave+ai; ave=ave/n; return ave;m个人成绩存放在score数组中,将高于平均分人数返回,将低于平均分的分数放在below数组中。doubl

7、e av=0.0;int i,j=0;for(i=0;im;i+) av+=scorei; av/=m;for(i=0;im;i+) if(scoreinext; double av=0.0; int n=0;while(p!=NULL)av=av+p-s; p=p-next; n+;av/=n; return av;N名学生成绩已放入一个带头节点的链表中,h指向链表头结点,找出学生最高分。double max=h-s; STREC *p; p=h-next;while(p)if(p-smax) max=p-s; p=p-next;return max;某学生记录由学号,8门课程成绩和平均分组

8、成,求出该学生平均分放在记录的ave成员中。int i;for(i=0;iave=a-ave+a-si; a-ave/=N;学生记录由学号和成绩组成,把低于平均分学生数据放在b数组中。int i; double ave=0.0; *n=0;for(i=0;iN;i+) ave=ave+ai.s; ave/=N;for(i=0;iN;i+) if(ai.ssno -name &t学生记录由学号和成绩组成,把高于等于平均分学生数据放在b数组中。double t=0 ; int i ; *n=0 ;for(i=0;iN;i+) t=t+ai.s; t=t/N;for(i=0;i=t) b(*n)+=

9、ai; return t;学生记录由学号和成绩构成,找出成绩最高的学生记录(只有一个最高分)。int i,max=a0.s,j=0;for(i=1;iN;i+) if(maxai.s)j=i; max=ai.s;*s=aj;学生记录由学号和成绩构成,找出成绩最低的学生记录(只有一个最低分)。int i,min=a0.s,j=0;for(i=1;iai.s)j=i; min=ai.s; *s=aj;记录由学号和成绩组成,把分数最高的学生数据放在h数组中,分数最高的学生可能不止一个。int i,max=a0.s,n=0;for(i=1;iN;i+) if(maxai.s) max=ai.s;for

10、(i=0;iN;i+) if(max=ai.s) bn+=ai;return n;记录由学号和成绩组成,把分数最低的学生数据放在h数组中,分数最低的学生可能不止一个。int i,min=a0.s,n=0;for(i=1;iai.s) min=ai.s;for(i=0;iN;i+) if(min=ai.s) bn+=ai;return n;记录由学号和成绩组成,函数返回指定学号的学生数据,若没找到,在结构体变量中给学号置空串,给成绩置-1。STREC c; int i; c.num0= 0; c.s=-1;for(i=0;iN;i+)if(strcmp(ai.num,b)=0)strcpy(c.

11、num,ai.num); c.s=ai.s; break;return c;记录由学号和成绩组成,按分数高低排列学生记录,高分在前。STREC tmp; int i,j;for(i=0;iN;i+)for(j=i+1;jN;j+) if(ai.saj.s)tmp=ai;ai=aj;aj=tmp;记录由学号和成绩组成,把指定分数范围内学生数据放在b数组中。int i,j=0;for(i=0;i=l&ai.s=h) bj+=ai; return j;数组左下半三角元素值全部置成0。int i,j;for(i=0;iN;i+)for(j=0;j=i;j+) aij=0;数组左下半三角元素值乘以n。i

12、nt i,j;for(i=0;iN;i+)for(j=0;j=i;j+) aij*=n;数组右上半三角元素值乘以m。int i,j;for(i=0;iN;i+)for(j=i;jN;j+) aij*=m;矩阵(3行3列)转置。int i,j,arr33; memcpy(arr,array,9*sizeof(int);for(i=0;i3;i+)for(j=0;j3;j+) arrayij=arrji; 把矩阵A加上矩阵A的转置存放在矩阵B中。int i,j,c33;for(i=0;i3;i+)for(j=0;j3;j+)cij=aji; bij=aij+cij;二维数组周边元素之和。int s=0,i,j;for(i=0;iN;i+)s+=a0i; s+=aM-1i;for(j=1;j=M-2;j+)s+=aj0; s+=ajN-1;return s;数组周边元素的平均值。int i,j,n=0; double sum=0;for(i=0

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

当前位置:首页 > 资格认证/考试 > 其它考试类文档

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