计算机二级C上机编程题型.doc_第1页
计算机二级C上机编程题型.doc_第2页
计算机二级C上机编程题型.doc_第3页
计算机二级C上机编程题型.doc_第4页
计算机二级C上机编程题型.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1返回指定学生数据,指定学号在主函数中输出。若没找到指定学号在结构体变量中给学号置空串,给成绩置-1,作为函数值返回int i;STREC t=0,-1;for(i=0;i=a&si=z&si-1= )k+;return k;5编写函数fun,函数的功能是求出小于或等于lim的所有素数并放在aa数组中,函数返回所求出的素数的个数。函数fun中给出的语句公供参考int x,i,k=0;for(x=1;x=lim;x+)for(i=2;ix;i+)if(x%i=0)break;if(i=x)aak+=x;return k;6计算s=根号下ln1+.ln(m),s作为函数值返回double s=0;int i;for(i=1;i=m;i+)s=s+log(i);return sqrt(s);7删除一维数组中所有相同的数,使之只剩一个。数组中的数已按由小到大的顺序排列,函数返回删除后数组中数据的个数。int i,k=1;for(i=0;i=a&ssi=z)ssi=ssi-32;9求出数组周边元素平均值病作为函数值返回给主函数中的sdouble sum=0;int i,j;for(i=0;iN;i+)for(j=0;jN;j+)sum=sum+wij;if(i=0|i=N-1|j=0|j=N-1)return sum/(4*N-4);10对变量h中的值保留两位小数,病对第三位四舍五入(h中的数值为正数)return (long) (h*100+0.5)/100.011将M行N列的二维数组中的数据,按列顺序依次放到一个字符串中int i,j,k=0;for(j=0;jN;j+)for(i=0;iN;i+)bk+=sij;bk=0;12移动字符串中的内容,移动规则:把第一个到第m个移到最后,把后面移到前面int i,j;char t;for(i=1;i=m;i+)t=w0;for(j=1;wj!=0;j+)wj-1=wj;wj-1=t;13若有n个整数,要求把下标从0到p平移到最后int i,j,t;for(i=0;i=p;i+)t=w0;for(j=1;j=n;j+)wj-1=wj;wj-1=t;14计算并输出给定10个数方差double sum=0,t=0;int i;for(i=0;i10;i+)t=t+xi;t=t/10;for(i=0;i10;i+)sum=sum+(xi-t)*(xi-t);return sqrt(sum/10);15求出二维数组周边元素之和,作为函数值返回。二维数组中的数值在主函数中赋予int i,j,sum=0;for(i=0;iM;i+)for(j=0;jN;j+)if(i=0|i=M-1|j=0|j=N-1)sum=sum+aij;return sum;16将放在字符串中的m个字符串按顺序合并成一个新的字符串int i,j,k=0;for(i=0;iM;i+)for(j=0;aij!=0;j+)bk+=aij;bk=0;17把分数最低的学生数据放在B所指的数组中,注意:分数最低的学生可能不止一个,返回人数int i,k=0,min;min=a0.s;for(i=1;iai.s) min=ai.s;for(i=0;i=0.000001);return x1;19将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。int i,j,k=0;for(j=0;jnn;j+)for(i=0;imm;i+)bk+=sij;*n=k;1 20将二维数组按列的顺序放到一维数组int i,j,k=0;for(j=0;jnn;j+)for(i=0;imm;i+)bk+=sij;*n=k;21将两个两位数的正整数a.b合并形成一个整数放c中。合并的方式是:a的十位和个位放c的千位和十位。b的十位*c=a/10*1000+b/10*100+a%10*10+b%10;22请编写一个函数 void fun()统计a到z26个字母各自出现次数,并写入PP中int i;for(i=0;i=a&tti=z)pptti-a+;23找出成绩最低的学生记录,通过形参返回主函数int i,k,min;min=a0.s;k=0;for(i=1;iai.s)min=ai.s;k=i;*s=ak;24求一个2xM二维数组最大元素值,并将此值返回调用函数int i,j,max=a00;for(i=0;i2;i+)for(j=0;jM;j+)if(maxaij) max=aij;return max;25使数组左下三角元素中的值乘nint i,j;for(i=0;iN;i+)for(j=0;j=j)aij=aij*n;26M行N列二维数组按行顺序放在一维数组中,一维数组中数据个数放在形参n所指的存储单元中int i,j,k=0;for(i=0;imm;i+)for(j=0;jnn;j+)bk+=sij;*n=k;27计算输出n包括n以内能被5或9整除的所有自然数的倒数之和double s=0;int i;for(i=1;i=n;i+)if(i%5=0|i%9=0)s=s+1.0/i;return s;28判断字符串是否回文?若是,函数返回1,主函数中输出:YES否侧返回0,主函数中输出NO。int i,len=0;while(strlen!=0)len+;for(i=0;ilen/2;i+)if(stri!=strlen-1-i) break;if(i=len/2) return 1;else return 0;30求1到1000内能被7或11整除但不能同时被7和11整除的所有整数并将他们放在a所指ude数组中。int i,k=0;for(i=1;inext;max=p-s;while(p!=NULL)if(p-smax) max=p-s;p=p-nextreturn max;32只删除字符串前和后的星号,串中字母之间的星号不能删除.形参n给出的字符串的长度,形参h给出的字符串中前导星号的个数,int i,k=0;for(i=h;in-e;i+)ak+=ai;ak=0;33把制定分数范围内的学生数据放在b所指的数组中,分数范围内的学生个数由函数值返回int i,k=0;for(i=0;i=l&ai.s=h)bk+=ai;return k;34计算n门课程平均分,计算结果作为函数值返回float s=0;int i=0;for(i=0;in;i+)s=s+ai;return s/n;36除了尾部的星之外,将字符串中其他星号全部删除,形参P已指向字符串中最后的一个字母。int i,k=0;for(i=0;i=0.000001)t=t*(0.5-n+1)*x/n;s=s+t;n+;return s;38sn=1+(0.5x+0.5(0.5-1)除2!)x平方double t=1,s=1;int n=1;while(fabs(t)=0.000001)t=t*(0.5-n+1)*x/n;s=s+t;n+;return s;39把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生个数通过形参n返回double sum=0;int i,k=0;for(i=0;iN;i+)sum=sum+ai.s;for(i=0;i=sum/N) bk+=ai;*n=k;return sum/N;41将字符串中的前导星号全部移到字符串的尾部int i;char t;while(a0=*)t=a0;for(i=1;ai!=0;i+)ai-1=ai;ai-1=t;42找出一维数组元素中最大的值和它所在的下标,最大的值和他所在的下表通过形参传回。int i;*max=a0;*d=0;for(i=1;in;i+)if(*maxai) *max=ai;*d=i;43把地狱平均分的学生数据放在b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回int i,k=0;double s=0;for(i=0;iN;i+)s=s+ai.s;s=s/N;for(i=0;iN;i+)if(ai.sn)for(i=p-n;ai!=0;i+)ak+=ai;ak=0;45除了字符串前导的星号之外,将串中其他的星号全部删除。int i,k=0;while(ak=*)k+;for(i=k;ai!=0;i+if(ai!=0;i+)ak+=ai;ak=0;47将所有大于1小于整数m的非素数放入xx所指数组中,非素数的个数通过k传回int x,i,n=0;for(x=2;xm;x+)for(i=2;ix;i+)if(x%i=0) break;if(i!=x) xxn+=x;*k=n;48求出1到m内(含m)能被7或11整除的所有的整数放在数组a中,通过n返回这些数的个数int i,k=0;for(i=1;i=m;i+)if(i%7=0|i%11=0)ak+=i;*n=k;49s=1+x+x n次方除以n!double s=1,t=1;int i=1;for(i=1;i=n;i+)t=t*x/i;s=s+t;return s;51计算并输出下列级数和:s=1除以1乘以2+1除以2乘以3+.+1除以n(n+1)double s=0;int i;for(i=1;i=n;i+)s=s+1.0/(i*(i+1);return s;52 根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。s=1加上1除以(1+2)+1除以(1+2+3).加上1除以(1+2+3+4+.+n)float s=0,t=0;int i;for(i=1;i=n;i+)t=t+i;s=s+1.0/t;return s;53计算并输出给定数组(长度为9)中每相邻两个元素之平均值的平方根之和double s=0;int i;for(i=0;i8;i+)s=s+sqrt(xi+xi+1)/2);return s;54删除一个字符串中指定下标的字符。其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。int i,k=0;for(i=0;ai!=0;i+)if(i!=n) bk+=ai;bk=0;55求小于形参n同时能被3与7整除的所有自然数之和的平方根,并作为函数值返回double s=0;int i;for(i=1;in;i+)if(i%3=0&i%7=0)s=s+i;return sqrt(s);56根据以下公式求p的值,结果由函数值带回。m与n为两个正整数且要求m大于n。p=m!除以n!(m-n)!int i;float t1=1,t2=1,t3=1;for(i=1;i=m;i+)t1=t1*i;if(i=n) t2=t1;if(i=m-n) t3=t1;57删除字符串中的全部前导星号,中间和尾部的星号不删除int i=0,k=0;while(ai=*)i+;for(i=i;ai!=0;i+)ak+=ai;ak=0;58求出数组最大元素下标并存在k所指定的存储单元中int i,max;max=s0;*k=0;for(i=1;it;i+)if(maxsi)max=si;*k=i;59将s所指字符串中下标为偶数的删除,串中剩余字符形成的新串放在t所指数组中。int i,k=0;for(i=0;si!0;i+)if(i%2!=0) tk+=si;tk=0;61计算病输出给定整数n所有因子之和。规定n的值不大于1000int i,s=0;for(i=2;in;i+)if(n%i=0) s=s+i;return s;62将大于形参m紧靠m的k个素数存入xxint x,i,n=0;for(x=m+1; ;x+)for(i=2;ix;i+)if(x%i=0) break;if(i=x) xxn+=x;if(n=k) break;63、二维数组是数坐下半三角的元素中的值全部为0int i,j;for (i=0;=N;i+) for (j=0;j=j) aij=0;64删除字符串中所有空格int i,k=0;for(i=0;stri!=0;i+)if(stri!= ) strk+=stri;strk=0;65长度为7除首尾其余5个按ASC降序排列int i,j;char t;for(i=1;inum-2;i+)for(j=i+1;jnum-1;j+)if(si=n) return s;else return t;67删除所有星号,在编写时,不得使用c语言提供的字符串函数int i,k=0;for(i=0;ai!=0;i+)if(ai!=*) ak+=ai;ak=0;68s所指将字符串除了下标为偶数同时ACS值也为偶数外其余删除;串中剩余字符所形成的一个新字符串放在t所指的数组中int i,k=0;for(i=0;si!=0;i+)if(i%2=0&si%2=0)tk+=si;tk=0;69从s所指字符串中删除指定字符。统一字母大小写按不同字符处理int i,k=0;for(i=0;si!=0;i+)if(si!=c) sk+=si;sk=0;70按分数高低排列学生的记录,高分在前int i,j;STREC t;for(i=0;iN-1;i+)for(j=i+1;jN;j+)if(ai.saj.s)t=ai;ai=aj;aj=t;71秋能整除x且不是偶数的各整数从小到大放在pp数组中,除数的个数通过形参n返回int i,k=0;for(i=1;i=x;i+)if(x%i=0&i%2!=0)ppk+=i;*n=k;72低于平均分的人数返回低于平均分的分数放在below数组中inti,k=0;double sum=0;for(i=0;im;i+)sum=sum+scorei;for(i=0;im;i+)if(scoreisum/m) belowk+=scorei;return k;73实现b=a+a,即把矩阵A加A的转制存在B中。计算结果在main函数中输出int i,j;for(i=0;i3;i+)for(j=0;j3;j+)bij=aij+aji;75计算3到n之间含所有素数平方根之和double s=0;int x,i;for(x=3;x=n;x+)for(i=2;ix;i+)if(x%i=0) break;if(i=x) s=s+sqrt(x);return s;76分数最高的学生数据放在h所指数组中int i,k=0,max;max=a0.s;for(i=1;iN;i+) if(maxai.s) max=ai.s;for(i=0;iN;i+) if(ai.s=max) bk+=ai;return k;77求平均分放在aveint i;double sum=0;for(i=0;iN;i+)sum=sum+(*a).si;(*a).ave=sum/N;79从num个字符串中找出最长的一个,病通过形参指针max传回该地址if(maxlenstrlen(ai)maxlen=strlen(ai;k=i;)80 3行3列矩阵转制int i,j,t;for(i=0;i3;i+)for(j=i+1;j3;j+)t=arrayij;arrayij=arrayji;arrayji=t;81将s所指字符串中下标为偶数同时ASCLL值为奇数的字符删除,s中剩余的字符形成的新串放在t所指的数组中int i,k=0;for(i=0;si!=0;i+)if(i%2!=0|si%2=0)tk+=si;tk=0;82函数功能是把s所指字符串中的内容逆置int i,len=strlen(s);char t;for(i=0;i=eps)t=t*n/(2*n+1);s=s+t;n+;return 2*s;86除了字符串前导和尾部的星号之外,将传中其他星号全部删除。形参h已指向字符串中第一个字母,形参p已指向字符串中最后一个字母int i,k=h-a;for(i=h-a;ip-a;i+)if(ai!=*) ak+=ai;for(i=p-a;ai!=0;i+)ak+=ai;ak=0;87将一个数字字符串转换为一个整数long s=0,i,f;if(p0=-) i=1;f=-1;else if(p0=+) i=1;f=1;else i=0;f=1;while(pi!=0)s=s*10+pi-0;i+;return f*s;88实现两个字符串的连接,即把P2所指的字符串连接到p1所指的字符串后面int n=0,k=0;while(p1n!=0)n+;while(p2k!=0)p1n=p2k;k+;n+;p1n=0;90s=1+(1+根号2)double s=0.t=0;int i;for(i=1;i=n;i+)t=t+sqrt(i);s=s+t;return s;91求出SS字符串中。指定字符个数,并返回此值int i,k=0;for(i=0;ssi!=0;i+)if(ssi=c) k+;return k;92s=1+1乘2分之一double s=0,t=1;i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论