二级C语言机试试题

二级C语言机试试题

ID:42101837

大小:134.50 KB

页数:10页

时间:2019-09-08

二级C语言机试试题_第1页
二级C语言机试试题_第2页
二级C语言机试试题_第3页
二级C语言机试试题_第4页
二级C语言机试试题_第5页
资源描述:

《二级C语言机试试题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、请补充fun函数,该函数的功能:按"0"到"9"统计一个字符串中的奇数数字字符各自出现的次数,结果保存在数组num中。注意:不能使用字符串库函数。例如,输入g1ters4543123564879fgfd,结果为1=2,3=2,5=2,7=1,9=1。请勿改动主函数main与其他函数中的任何内容,仅在fun函数的横线上填写所需的若干表达式或语句。注意:部分源程序给出如下。#include#include#defineN500voidfun(char*t,intcount[]){inti,j;inta[10];char*p=t;for

2、(i=0;i<10;i++){count[i]=0;a[i]=0;}while(___1___){if(*p>='0'&&*p<='9')___2___;p++;}for(i=1,j=0;i<10;i=i+2,j++)___3___;}main(){chars[N];intcount[10],i;printf("Pleaseenteracharstring:");gets(s);printf("Theoriginalstring");puts(s);fun(s,count);printf("Thecountberofleter");for(i=0

3、;i<5;i++){printf("");printf("%d=%d",2*i+1,count[i]);}printf("");}【答案】(1)*p(2)a[*p-'0']++(3)count[j]=a[i]下列给定程序中,函数fun的功能是从字符串s中删除所有小写字母"c"。请修改程序中的错误,使它能计算出正确的结果。注意:不要改动main函数,不能增行或删行,也不能更改程序的结构。#includevoidfun(char*str){inti,j;for(i=j=0;str[i]!='';i++)/****error******/if

4、(str[i]!='c')str[j]=str[i];/****error******/str[i]='';}main(){charstr[100];printf("Enterastringwith'c':");gets(str);printf("Theoriginalstring:");puts(str);fun(str);printf("Thestringafterdeleted:");puts(str);printf("");}【答案】(1)str[j++]=str[i];(2)str[j]='';M名学生的成绩已在主函数中放入一个带头节点的链

5、表结构中,a指向链表的头节点。请编写函数fun,它的功能是求出平均分,由函数值返回。例如,若学生的成绩是69、85、91、72、64,则平均分应当是76.200。请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。注意:部分源程序给出如下。#include#include#defineM5structlist{doubles;structlist*next;};typedefstructlistSCORE;doublefun(SCORE*a){}SCORE*creat(double*stu

6、){SCORE*a,*p,*q;inti=0;a=p=(SCORE*)malloc(sizeof(SCORE));p->s=0;while(is=stu[i];i++;p->next=q;p=q;}p->next=0;returna;}outlist(SCORE*a){SCORE*p;p=a->next;printf("a");do{printf("->%4.1f",p->s);p=p->next;}while(p!=0);printf("");}main(){doublestu[

7、M]={69,85,91,72,64},ave;SCORE*a;FILE*out;a=creat(stu);outlist(a);ave=fun(a);printf("ave=%6.3f",ave);out=fopen("outfile.dat","w");fprintf(out,"%6.3f",ave);fclose(out);}【答案】doubleaver=0.0;//初始化平均值while(a!=NULL)//如果头指针不指向链表尾,就累加链表中成绩{aver+=a->s;//累加成绩a=a->next;//指向下一个节点}aver/=M;//求平均分

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。