下载此文档

计算机二级C语言上机题库100套(最新版).pdf


文档分类:资格/认证考试 | 页数:约31页 举报非法文档有奖
1/31
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/31 下载此文档
文档列表 文档介绍
该【计算机二级C语言上机题库100套(最新版) 】是由【小屁孩】上传分享,文档一共【31】页,该文档可以免费在线阅读,需要了解更多关于【计算机二级C语言上机题库100套(最新版) 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..word专业资料-可复制编辑-欢迎下载2013年3月全国计算机等级考试(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。二级C语言上机题库100套voidfun(intm,int*a,int*n)(超级最新完整版){建议拷贝岛U盘使用查找功能百分百中inti;第一套*n=0;(i=7;i<=m;i++)给定程序中,函数fun的功能是:计算if((i%7==0)||(i%11==0))a[(*n)++]=i;下式前n项的和作为函数值返回。例如:当形参n的值}为10的时,函数返回:。第三套第一处s=0;(i=1;i<=n;i++)函数fun的功能是:逆置数组元素是的值。例如:若a第三处s=s+(*i-1)*(*i+1)/(t*t);所指数组中的数据依次为:1、2、3、4、5、6、7、8、,则逆置后依次为:9、8、7、6、5、4、3、2、1。:统形参n给出数组中数组中数据的个数。计substr所指字符串在str所指字符串中出现伯次数。第一处for(i=0;i<n/2;i++)/**found**/第二处a[i]=a[n-1-i];for(i=0;str[i];i++)第三处a[n-i-1]=t;/**found**/2程序修改if(substr[k+1]==’’’):,它的功能是:根据以下公等的十进制整数。规定输入的字符串最多只能包含5位式求JI的值(,。时停止送代):程序运行后,,/**found**/…。n=*p-‘0’;doublefun(doubleeps)/**found**/{doubles=1,t=1./3;n=n*8+*p-‘0’;intn=1;(t>=eps)学生的记录由学号和成绩组成,N名学生的数据{s+=t;n++;t=t*n/(*n+1)已在主函数中放入结构体数组s中,请编写了函数fun,;}它的功能是:函数返回指定学号的学生数据,指定的学return(s*);生号在主函数中输入,若没有找到指定学号,在结构体}变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是strcmp)。第二套STRECfun(STREC*a,char*b){给定程序中已建立一个带有头结点的单向链表,;链表中的各结点按数据域递增有序连接。函数fun的功Inti;能是:删除链表中数据域值相同的结点,[0]=’’’;个。=-1;第一处free(q);for(i=0;i<N;i++)第二处q=p->next;if(strcmp(a[i].num,b)==0)第三处q=q->next;{strcpy(,a[i].num);=a[i].s;break;}:用选returnc;择法对数组中的n各元素按从小到大的顺序进行排序。}/**found**/第四套p=j;/**found**/给定程序中,函数fun的功能是:在带有头结p=i;点的单向链表中,查找数据域中值为ch的结点。:若不存请编写一个fun函数,它的功能是:求出1到m之间在值为ch的结点,函数值返回0.:..word专业资料-可复制编辑-欢迎下载第一处while(p!=0)第六套第二处if(p->data==ch)returnn;=fun(head,ch);给定程序中,函数fun的功能是:,:删除移,处理后字符串的首地址作为函数值返回。p所指字符串的所有空白字符(包括制表符、回车符及第一处t[j]=s[i];j++;换行符)。输入字符串时用‘#’结束输入。第二处for(i=0;i<k;i++)/**found**/t[j+i]=p[i];for(i=0,t=0;p[i];i++)第三处t[j+k]=0;/**found**/[t]=’’’;:,将ss所指字符串中所有串替换成t2所指定字符串,所形成的新串放在w所指的下标为奇数位置上的字母转换为大写(若该位置上不是数组中。在此处,要求t1和t2所指字符串的长度相同。字母,则不转换)。/**found**/voidfun(char*ss)while(*w){/**found**/inti;if(*r==*p)for(i=1;i<strlen(ss);i+=2){if(ss[i]>=’a’&&ss[i]<=’z’)函数fun的功能是:将s所指字符串中ASCIIss[i]-=32;值为奇数的字符删除,串中剩余字符形成一个新串放在t}所指定的数组中。}voidfun(char*s,chart[])第五套{inti,j=0;,存储了若干个学生的学for(i=0;i<strlen(s);i++)号、姓名和三门课的成绩。函数fun的功能是将存放学if(s[i]%2==0)t[j++]=s[i];生数据的结构体数组,按照姓名的字典序(从小到大排t[j]=0;序)。请在程序的下划线处填入正确的内容并把下划线删}除,使程序得出正确的结果。第七套第一处structstudentt;(i=0;i<n-1;i++)程序通过定义学生结构体变量,存储了学生的第三处if(strcmp(a[i].name,a[j].name)>0)学号、姓名和三门课的成绩。函数fun的功能是将形参a2程序修改所指结构体变量s中的数据进行修改,:在p所指字为函数值返回主函数,在主函数中输出修改后的数据。符串中找出ASCII码值最大的字符,将其放在第一个位第一处structstudent*置上;并将该字符前的原字符向上顺序移动。fun(structstudent*a)/**found**/第二处for(i=0;i<3;i++)q=p+i;a->score[i]+=1;/**found**/第三处returna;while(q>p):从N学生的记录由学号和成绩组成,N名学生的数据个字符串中找出最长的那个串,并将其地址作为函数值已在主函数中放入结构体数组s中,请编写了函数fun,返回。各字符串在主函数中输入,并放在一个字符串数它的功能是:把指定分数范围内的学生数据放在b所指组中。的数组中,分数范围内的学生人数由函数值返回。/**found**/intfun(STREC*a,STREC*b,intl,inth)char*fun(char(*sq)[M]){inti,j=0;/**found**/for(i=0;i<N;i++)returnsp;if((a[i].s>=1&&a[i].s<=h)[j++]=a[i];函数fun的功能是:将a、b中的两位正整数合returnj;并形成一个新的整数放在c中。合并的方式是:将a中}的十位和个位依次放在变量c的百位和个位上,b中的:..word专业资料-可复制编辑-欢迎下载十位和个位数依次放在变量c的十位和千位上。/**found**/#include<>num[k]=0;voidfun(inta,intb,long*c)/**found**/{*c=(b%10)*1000+(a/10)*100+(b/10)*10+a%10;switch(*s)},函数的功能是:,作为函数值返回。二维数组中的值在主函数fun的功能是:将形参观者工所指数组中的函数中赋予。前半部分元素中的值和后半部分元素中的值对换。形参nintfun(inta[M][N])中存放数组中数据的个数,若n为奇书,则中间元素不{动。inttot=0,i,j;第一处p=(n%2==0)?n/2:n/2+1;for(i=0;i<N;i++)第二处a[i]=a[p+i];{第三处a[p+i]=t;tot+=a[0][i];+=a[M-1][i];:把}主函数中输入的三个数,最大的放在a中,最小的放在for(i=1;i<M-1;i++){c中,中间的放在b中。tot+=a[i][0];/**found**/tot+=a[i][N-1];floatk;}/**found**/returntot;if(*a<*c)},,请编写了函数fun,程序通过定义学生结构体变量,存储了学生的它的功能是:把分数最高的学生数据放在b所指的数组学号、姓名和三门课的成绩。函数fun的功能是将形参a中,注意:分数最高的学生可能不止一个,函数返回分中的数据进行修改,把修改后的数据作为函数值返回主数最高的学生的人数。函数进行输出。intfun(STREC*a,STREC*b)第一处structstudent{fun(structstudenta)inti,max=a[0].s,n=0;第二处strcpy(,”LiSi”);for(i=1;i<N;i++)[i]+=1;if(max<a[i].s)max=a[i].s;2程序修改for(i=0;i<N;i++)假定整数数列中的数不重复,并存放在数组中。if(max==a[i].s)b[n++]=a[i];:删除数列中returnn;值为x的元素。N中存放的是数列中元素的个数。}/**found**/第九套if(p==n)return-1’/**found**/给定程序中,函数fun的功能是:计算形参x所a[i]=a[i+1];指数组中N个数的平均值,(规定所有数均为正数),,大于等学生的记录由学号和成绩组成,N名学生的数据于平均数的移至x所指数组的后部,平均值作为函数值已在主函数中放入结构体数组s中,请编写了函数fun,返回,在主函数中输出平均值和移动后的数据。它的功能是:把分数最低的学生数据放在b所指的数组第一处for(i=0;i<N;i++)中,注意:分数最低的学生可能不止一个,函数返回分av+=x[i]/N数最低的学生的人数。第二处y[j]=x[i];intfun(STREC*a,STREC*b)x[i]=-1;j++;}{第三处i++;inti,j=0,min=a[0].s;(i=0;i<N;i++):统{if(min>a[i].s){计字符串各元音字母(即:A、E、I、O、U)的个数。j=0;注意字母不分大小写。b[j++]=a[i];min=a[i].s;:..word专业资料-可复制编辑-欢迎下载}/**found**/elseif(min==a[i].s)for(i=j+1;i<n;i++)b[j++]=a[i];/**found**/}p=i;returnj;}函数fun的功能是:将a、b中的两位正整数合第十一套并形成一个新的整数放在c中。合并的方式是:,b中的给定程序中,函数fun的功能是:计算形参x所十位和个位数依次放在变量c的十位和千位上。指数组中N个数的平均值,(规定所有数均为正数),将#include<>所指数组中大于平均值的数据移至数据的前部,小于等voidfun(inta,intb,long*c)于平均数的移至x所指数组的后部,平均值作为函数值{返回,在主函数中输出平均值和移动后的数据。*c=(b%10)*1000+(a%10)*100+(b/10)*10+(a/10);第一处av=s/N;}第二处y[j++]=x[i];x[i]=-1;}第十三套第三处if(x[i]!=-1)[j++]=x[i];给定程序中,函数fun的功能是:找出N*,:读所指的一维数组中。入一行英文文本行,将其中每个单词的第一个字母改成第一处b[i]=a[0][i];大写,然后输出次文本行(这里的“单词”是指由空格隔第二处if(b[i]<a[j][i])开的字符串)。b[i]=a[j][i];/**found**/第三处fun(x,y);#include<>/**found**/:交upfst(char*p)换主函数中的两个变量的值。/**found**/程序定义了N×N的二级数组,并在主函数中赋intfun(int*x,int*y)值,请编写函数fun,函数的功能是:求出数组周边元素/**found**/的平均值并作出函数值饭给主函数中的s。t=*x;*x=*y;*y=t;doublefun(intw[][N]){inti,j,n=0;编写函数fun,函数的功能是求出小于或等于doublesum=0;lim的所有素数并放在aa数组中,函数返回所求出的素for(i=0;i<N;i++)数的个数。函数fun中给出的语句仅供参考。{sum+=w[0][i]+w[N-1][i];#include<>n+=2;}#defineMAX100for(i=1;i<N-1;i++)intfun(intlim,intaa[MAX]){sum+=w[i][0]+w[i][N-1];{inti,j,k=0;n+=2;for(i=2;i<=lim;i++)}{returnsum/n;for(j=2;j<=(i/2);j++)}if(i%j==0)break;第十二套if(j>(i/2))aa[k++]=i;}returnk;}给定程序中,函数fun的功能是:将自然数1—,然后再顺序读出显示在屏幕上。函数fun的功能是进行字母转换。若形参ch中第一处fprintf(fp,”%d%f”,i,sqrt((double)i));小写英文字母,则转换成相应的大写英文字母;若形参第二处fclose(fp);ch中是大写英文字母,则转换成相应的小写英文字母;第三处if((fp=fopen(fname,”r”))==NULL)并将转换的结果作为函数值返回。((ch>=’a’)&&(ch<=’z’)):将n第二处return个无序整数从小到大排序。ch+’a’-‘A’:..word专业资料-可复制编辑-欢迎下载第三处returnch;while(*p){if(*p>=’a’&&*p<=’z’):给pp[*p-‘a’]+=1;一维数组a输入任意四个整数并按下列的规律输出。例p++;如输出1、2、3、4,程序输出一下方阵。}a)123}、月、日组成,N名人员的/**found**/数据已在主函数中存入结构体数组std中,且编号唯一。voidfun(int*a)函数fun的功能是:找出指定编号人员数据,作为函数/**found**/值返回,由主函数输出,若指定编号不存在,返回数据a[j]=a[j-1];中编号为空串。(STU*std,char*num)请编写函数fun,函数的功能是:计算并输出给第2处if(strcmp(std[i].num,num)定整数n的所有因子(不包过1和n本身)之和。规定==0)(std[i]);intfun(intn){:从sints=0,i;所指字符串中,找出与t所指字符串相同的子串的个数for(i=2;i<n;i++)作为函数值返回。if(n%i==0)s+=i;/**found**/returns;r++;p++;}/**found**/第十五套if(*r==0),函数的功能是:把形参s所指字符函数fun的功能是:将s所指字符串中ASCII串下标为奇数的字符右移到下一个奇书位置,最右边呗值为偶数的字符删除,串中剩余字符形成一个新串放在t移出字符串的字符绕回放到第一个奇数位置,下标为偶所指数组中。数的字符不动(注:字符串的长度大于等于2)。例如,#include<>形参s所指的字符串为:abcdefgh,执行结果为:#include<>ahcbedg。voidfun(char*s,chart[])第一处if(n%2==0)k=n-1;{第二处c=s[k];inti,j=0;第三处s[1]=c;for(i=0;i<strlen(s);i++)(s[i]%2)t[j++]=s[i];:求t[j]=0;s=aa…aa—…—aaa—aa—a(此处aa…aa表示n个a,}a和n的值在1至9之间)。第十七套/**found**/=0,t=0;给定程序中,函数fun的功能是:统计形参s所/**found**/指字符串中数字字符出现的次数,并存放在形参t所指t=t/10;的变量中,最后在主函数中输出。例如,:abcdef35adgh3kjsdf7。输出结果为:4。请编写一个函数voidfun(char*tt,intpp[]),第1处for(i=0;s[i]!=NULL;i++)统计在tt所指字符串中‘a’至‘z’26个小写字母各自出现第2处if(s[i]>=’0’&&s[i]<=’9’)在的次数,并依次放在pp数组中。n++;voidfun(char*tt,intpp[])第3处*t=n;{*p=tt;:通inti;过某种方式实现两个变量的交换,规定不允许增加语句for(i=0;i<26;i++)和表达式。例如变量a中的值原为8,b中的值原为3,pp[i]=0;程序运行后a中值为3,b中的值为8.:..word专业资料-可复制编辑-欢迎下载/**found**/给定程序中,函数fun的功能是:将a所指的3t=*x;*x=y;×5矩阵中第k列的元素左移到第0列,第k列以后的/**found**/每列元素行依次左移,原来左边的各列依次绕到右边。return(t);第1处for(p=1;p<=k;p++)(j=0;j<N-1;j++)请编写函数fun,函数的功能是:求出1到1000a[i][j]=a[i][j+1];之间能被7或11整除,但不能同时被7和11整除的所第3处a[i][N-1]=temp;有整数并将它们放在a所指的数组中,。:根#include<>据形参m的值(2<=m<=9),在m行m列的二维数组viodfun(int*a,int*n)中存放如下所示规律的数据,由main函数输出。例如,{inti;若输入2则输出:*n=0;12for(i=7;i<1000;i++)24if(((i%7)==0││(i%11)==0/**found**/&&(i%77)!=0)a[(*n)++]=i;fun(inta[][M],intm)}/**found**/第十八套a[j][k]=(k+1)*(j+1);,函数fun的功能是:有N×N矩阵,函数fun的功能是:将a、b中的两位正整数合根据给定的m(m<=n)值,将每行元素中的值均右移m并形成一个新的整数放在c中。合并的方式是:将a中个位置,,b中的第1处for(i=0;i<N;i++)十位和个位数依次放在变量c的个位和百位上。第2处t[i][j+m]=t[i][j];voidfun(inta,intb,int*c)第3处for(j=0;j<m;j++){*c=(a%10)*1000+(b%10)*:计+(a/10)*10+(b/10);算并输出high以内最大的10个素数之和。high的值由}主函数传给fun函数。第二十套/**found**/((2<=high)&&(n<10))给定程序中,函数fun的功能是:对形参s所指/**found**/字符串中下标为奇数的字符ASCII码大小递增排序,并yes=0;break;将排序后的下标为奇数的字符取出,形成一个新串。=i;请编写函数fun,函数的功能是:利用一下所示第2处for(j=i+2;j<n;j=j+2)的简单迭代方法求方程求方程:cos(x)-x=0的一个第3处p[j]=0;实根。x=cos(x)迭代步骤如下:(1)+;(2)x0=x1,把x1的值赋给x0;(3)x1=:用(x0),求出一个新的x1;(4)若x0-x1的绝对值小下面的公式求π的近似值,(5)否则执行步骤(2);(5)所定数(参数num)为止:,则程序输出求x1就是方程cos(x)-x=。返回。程序将输出结果为:Root=。/**found**/floatfun()while((fabs(t))>=num){/**found**/floatx0,x1=;t=s/ndo{=x1;请编写一个函数voidfun(chara[],charx1=cos(x0);b[],intn),其功能是:删除一个字符串指定下标的字}while(fabs(x0-x1)>);符。其中,a指向原字符串,删除指定字符后的字符串returnx1;放在b所指的n中存入指定的下标。}viodfun(chara[],char第十九套b[],intn){:..word专业资料-可复制编辑-欢迎下载strncpy(b,a,n);第二处for(i=0;i<N;i++)b[n]=0;第三处a[0][i]=a[k][i];strcat(b,a+n+1);}:读第二十一套入一个字符串(长度<20),。例如,若输入edcba,则给定程序中,函数fun的功能是:在形参ss所应输出:abcde。指字符串数组中,将所有串长超过k的字符串右边的字/**found**/符删去,只保留左边的k个字符。ss所指字符串数组中for(i=strlen(t)-1;i;i--)共有N个字符串,且串小于M。/**found**/第一处voidfun(char(*ss)[M],intk)if(t[j]>t[j+1])第二处while(i<N){[i][k]=0;i++;}请编写函数fun,函数的功能是:(:根位置上不是字母,则不转换)。据以下公式求π值,并作为函数值返回。例如,给指定精voidfun(char*ss),应当输出Pi=30140578.。{/**found**/char*p=ss;t=1;inri=0;/**found**/while(*p){return(2*s);if((i%2)&&(*p>=’a’&&*p<=’z’))*p-=32;假定输入字符串中只包含字母和*号。请编写函p++;数fun,它的功能是:将字符串的前导*号不得多于n个;i++;若多于n个,则删除多余的*号;若少于或等于n个,则}什么也不做,字符串中间和尾部的*号不删除。函数fun}中给出的语句仅供参考。第二十三套voidfun(char*a,intn){给定程序的功能是:调用函数fun将指定源文件inti=0,k=0;中的内容复制到指定的目标文件中,复制成功时函数的while(a[k]==’*’)k++;返回值是1,,把复if(k>n)制的内容输出到终端屏幕。主函数源文件名放在变量{sfname中,目标文件放在变量tfname中。i=n;j=k;第一处for(;a[j]!=0;j++)if((fs=fopen(source,”r”))==NULL)a[i++]=a[j];第二处while(!feof(fs))a[i]=0;第三处fputc(ch,ft);}}:,构成一个新数给定程序中,函数fun的功能是:a所指4×3放在t中。高位仍在高位,低位仍在低位。矩阵中第k行的元素与第0行元素交换。例如:有下列/**found**/矩阵if(d%2==0)123/**found**/456s/=10;:将两位正整数a、b合并形若k为2,程序执行结果为成一个新的整数放在c中。合并的方式是:将a中的十789位和个位依次放在变量c的十位和千位上,b中的十位456和个位数依次放在变量c的百位和个位上。123voidfun(inta,intb,long*c)101112{第一处voidfun(int(*a)[N],intk)*c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10);:..word专业资料-可复制编辑-欢迎下载第二十四套并将这两个素数通过形参指针传回主函数。/**found**/程序通过定义学生结构体变量,存储了学生的y=1;学号、姓名和三门课的成绩。函数fun的功能是将形参a/**foune**/所指结构体变量中的数据赋给函数中的结构体变量b,d=a-i;并修改b中的学号和姓名,最后输出修改后的数据。=a;请编写函数fun,它的功能是:计算并输出n(包第二处strcpy(,”LiSi”)括n)以内能被5或9整除的所有自然数的倒数之和。第三处for(i=0;i<3;i++)doublefun(intn)printf(“%”,[i]);{;:从sdoublesum=;所指字符串中删除所有小写字母c。请改正程序中的错for(i=1;i<n;i++)误,使它能计算出正确的结果。if(i%5==0||i%9==0)/**found**/sum+=;s[j++]=s[i];returnsum;/**found**/}s[j]=’0’;第二十六套

计算机二级C语言上机题库100套(最新版) 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数31
  • 收藏数0 收藏
  • 顶次数0
  • 上传人小屁孩
  • 文件大小2.04 MB
  • 时间2024-03-27