万维考试系统-C语言题库-程序设计题导出-113道.doc
《万维考试系统-C语言题库-程序设计题导出-113道.doc》由会员分享,可在线阅读,更多相关《万维考试系统-C语言题库-程序设计题导出-113道.doc(186页珍藏版)》请在咨信网上搜索。
一、程序设计 共113题 (共计1130分) 第1题 (10.0分) 题号:390 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:编写函数求1~100中奇数的平方和。 结果为166650.000000。 ------------------------------------------------*/ #include <stdio.h> void wwjt(); float sum(int n) { /**********Program**********/ /********** End **********/ } 答案:---------------------- float s=0; int i; for(i=1;i<=n;i=i+2) s=s+i*i; return(s); ---------------------- 第2题 (10.0分) 题号:320 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:在键盘上输入一个3行3列矩阵的各个元素的值(值 为整数),然后输出主对角线元素的积,并在fun() 函数中输出。 ------------------------------------------------*/ #include <stdio.h> void wwjt(); main() { int i,j,s,a[3][3];; for(i=0;i<3;i++) { for(j=0;j<3;j++) scanf("%d",&a[i][j]); } s=fun(a); printf("Sum=%d\n",s); wwjt(); } int fun(int a[3][3]) { /**********Program**********/ /********** End **********/ } void wwjt() { FILE *IN,*OUT; int m; int n; int i[3][3]; int o; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read FILE Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write FILE Error"); } for(m=0;m<3;m++) { for(n=0;n<3;n++) fscanf(IN,"%d",&i[m][n]); } o=fun(i); { fprintf(OUT,"%d\n",o); getch(); } fclose(IN); fclose(OUT); } 答案:---------------------- int sum; int i,j; sum=1; for(i=0;i<3;i++) sum=sum*a[i][i]; return sum; ---------------------- 第3题 (10.0分) 题号:324 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:能计算从1开始到n的自然数中偶数的平方的和,n由 键盘输入,并在main()函数中输出。(n是偶数) ------------------------------------------------*/ #include <stdio.h> void wwjt(); int fun(int n) { /**********Program**********/ /********** End **********/ } main() { int m; printf("Enter m: "); scanf("%d", &m); printf("\nThe result is %d\n", fun(m)); wwjt(); } void wwjt() { FILE *IN,*OUT; int t; int o; int c; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read FILE Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write FILE Error"); } for(c=1;c<=5;c++) { fscanf(IN,"%d",&t); o=fun(t); fprintf(OUT,"%d\n",o); } fclose(IN); fclose(OUT); } 答案:---------------------- int sum,i; sum =0; for(i=2;i<=n;i=i+2) { sum=sum+i*i;} return(sum); ---------------------- 第4题 (10.0分) 题号:345 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:将两个两位数的正整数a、b合并形成一个整数放在c 中。合并的方式是:将a数的十位和个位数依次放在 c数的千位和十位上, b数的十位和个位数依次放在 c数的个位和百位上。 例如:当a=45,b=12。调用该函数后,c=4251。 ------------------------------------------------*/ #include <stdio.h> void wwjt(); void fun(int a, int b, long *c) { /**********Program**********/ /********** End **********/ } main() { int a,b; long c; printf("input a, b:"); scanf("%d%d", &a, &b); fun(a, b, &c); printf("The result is: %ld\n", c); wwjt(); } void wwjt ( ) { FILE *rf, *wf ; int i, a,b ; long c ; rf = fopen("in.dat", "r") ; wf = fopen("out.dat","w") ; for(i = 0 ; i < 10 ; i++) { fscanf(rf, "%d,%d", &a, &b) ; fun(a, b, &c) ; fprintf(wf, "a=%d,b=%d,c=%ld\n", a, b, c) ; } fclose(rf) ; fclose(wf) ; } 答案:---------------------- *c=a/10*1000+a%10*10+b/10+b%10*100; ---------------------- 第5题 (10.0分) 题号:366 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:求一组数中大于平均值的数的个数。 例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函 数值为3。 ------------------------------------------------*/ #include <stdio.h> void wwjt(); int fun(int a[],int n) { /**********Program**********/ /********** End **********/ } main() { int a[10]={1,3,6,9,4,23,35,67,12,88}; int y; y=fun(a,10); printf("y=%d\n",y); wwjt(); } void wwjt() { FILE *IN,*OUT; int iIN[10],iOUT,i,j; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Please Verify The Currernt Dir..it May Be Changed"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Please Verify The Current Dir.. it May Be Changed"); } for(j=0;j<10;j++) { for(i=0;i<10;i++) fscanf(IN,"%d",&iIN[i]); iOUT=fun(iIN,10); } fprintf(OUT,"%d\n",iOUT); fclose(IN); fclose(OUT); } 答案:---------------------- int i,k=0; float s=0,ave; for(i=0;i<n;i++) s+=a[i]; ave=s/n; printf("%f ",ave); for(i=0;i<n;i++) if(a[i]>ave)k++; return k; ---------------------- 第6题 (10.0分) 题号:355 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:对长度为8个字符的字符串,将8个字符按降序排列。 例如:原来的字符串为CEAedcab,排序后输出为edcbaECA。 ------------------------------------------------*/ Firefox 答案:---------------------- int i,j; char t; for(i=0;i<num;i++) for(j=i+1;j<num;j++) if(s[i]<s[j]) { t=s[i];s[i]=s[j];s[j]=t;} ---------------------- 第7题 (10.0分) 题号:44 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:求出二维数组周边元素之和,作为函数值返回。二 维数组的值在主函数中赋予。 -------------------------------------------------*/ #define M 4 #define N 5 #include <stdio.h> void wwjt(); int fun(int a[M][N]) { /**********Program**********/ /********** End **********/ } main() { int a[M][N]={{1,3,5,7,9},{2,4,6,8,10},{2,3,4,5,6},{4,5,6,7,8}}; int y; y=fun(a); printf("s=%d\n",y); wwjt(); } void wwjt() { FILE *IN,*OUT; int iIN[M][N],iOUT; int i,j,k; IN=fopen("14.IN","r"); if(IN==NULL) {printf("Please Verify The Currernt Dir..it May Be Changed"); } OUT=fopen("14.out","w"); if(OUT==NULL) {printf("Please Verify The Current Dir.. it May Be Changed"); } for(k=0;k<10;k++) { for(i=0;i<M;i++) for(j=0;j<N;j++) fscanf(IN,"%d",&iIN[i][j]); iOUT=fun(iIN); fprintf(OUT,"%d\n",iOUT); } fclose(IN); fclose(OUT); } 答案:---------------------- int s=0; int i,j; for(i=0;i<M;i++) s=s+a[i][0]+a[i][N-1]; for(j=1;j<N-1;j++) s=s+a[0][j]+a[M-1][j]; return s; ---------------------- 第8题 (10.0分) 题号:339 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:判断整数x是否是同构数。若是同构数,函数返回1; 否则返回0。x的值由主函数从键盘读入,要求不大 于100。 说明:所谓“同构数”是指这样的数,这个数出现在它的 平方数的右边。 例如:输入整数5,5的平方数是25,5是25中右侧的数,所 以5是同构数。 ------------------------------------------------*/ #include <stdio.h> void wwjt(); int fun(int x) { /**********Program**********/ /********** End **********/ } main() { int x,y; printf("\nPlease enter a integer numbers:"); scanf("%d",&x); if(x>100) { printf("data error!\n"); exit(0); } y=fun(x); if(y) printf("%d YES\n",x); else printf("%d NO\n",x); wwjt(); } void wwjt() { FILE *IN,*OUT; int n,t; int o; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read FILE Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write FILE Error"); } for(t = 0 ; t < 5 ; t++) { fscanf(IN, "%d", &n) ; o=fun(n); fprintf(OUT, "%d\n",o ) ; } fclose(IN); fclose(OUT); } 答案:---------------------- int k; k=x*x; if((k%10==x)||(k%100==x)) return 1; else return 0; ---------------------- 第9题 (10.0分) 题号:383 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:用函数实现字符串的复制, 不允许用strcpy()函数。 ------------------------------------------------*/ #include <stdio.h> void wwjt(); void copy(char str1[],char str2[]) { /**********Program**********/ /********** End **********/ } main() { void copy(); char c1[40],c2[40]; gets(c1); copy(c1,c2); puts(c2); wwjt(); } void wwjt() { FILE *IN,*OUT; char i[100]; char o[100]; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read FILE Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write FILE Error"); } fscanf(IN,"%s",i); copy(i,o); fprintf(OUT,"%s\n",o); fclose(IN); fclose(OUT); } 答案:---------------------- int i; for(i=0;str1[i]!='\0';i++) str2[i]=str1[i]; str2[i]='\0'; ---------------------- 第10题 (10.0分) 题号:310 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:计算并输出给定整数n的所有因子之和(不包括1与 自身)。 注意:n的值不大于1000。 例如:n的值为855时,应输出704。 ------------------------------------------------*/ #include <stdio.h> void wwjt(); int fun(int n) { /**********Program**********/ /********** End **********/ } main() { printf("s=%d\n",fun(855)); wwjt(); } void wwjt() { FILE *IN,*OUT; int iIN,iOUT,i; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Please Verify The Currernt Dir..it May Be Changed"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Please Verify The Current Dir.. it May Be Changed"); } for(i=0;i<5;i++) { fscanf(IN,"%d",&iIN); iOUT=fun(iIN); fprintf(OUT,"%d\n",iOUT); } fclose(IN); fclose(OUT); } 答案:---------------------- int s=0,i; for(i=2;i<n;i++) if(n%i==0)s=s+i; return s; ---------------------- 第11题 (10.0分) 题号:354 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:求小于lim的所有素数并放在aa数组中,该函数返回 所求出素数的个数。 ------------------------------------------------*/ #include<stdio.h> #include<conio.h> #define MAX 100 void wwjt(); int fun(int lim,int aa[MAX]) { /**********Program**********/ /********** End **********/ } main() { int limit,i,sum; int aa[MAX]; printf("Please input ainteger:"); scanf("%d",&limit); sum=fun(limit,aa); for(i=0;i<sum;i++){ if(i%10==0&&i!=0) printf("\n"); printf("%5d",aa[i]); } wwjt(); } void wwjt() { int i,j,array[100],sum,lim; FILE *rf, *wf ; rf = fopen("in.dat", "r") ; wf = fopen("out.dat", "w") ; for (j=0; j <= 5; j++) { fscanf(rf, "%d", &lim); sum=fun(lim,array); for(i=0;i<sum;i++) fprintf(wf, "%7d", array[i]); fprintf(wf, "\n"); } fclose(rf); fclose(wf); } 答案:---------------------- int n=0; int i,j; for(i=2;i<=lim;i++) {for(j=2;j<i;j++) if(i%j==0) break; if(j==i) aa[n++]=i; } return n; ---------------------- 第12题 (10.0分) 题号:341 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:删除所有值为y的元素。数组元素中的值和y的值由 主函数通过键盘输入。 ------------------------------------------------*/ #include <stdio.h> #include<conio.h> #include<stdio.h> #define M 20 void wwjt(); void fun(int bb[],int *n,int y) { /**********Program**********/ /********** End **********/ } main() { int aa[M],n,y,k; printf("\nPlease enter n:");scanf("%d",&n); printf("\nEnter %d positive number:\n",n); for(k=0;k<n;k++) scanf("%d",&aa[k]); printf("The original data is:\n"); for(k=0;k<n;k++) printf("%5d",aa[k]); printf("\nEnter a number to deletede:");scanf("%d",&y); fun(aa,&n,y); printf("The data after deleted %d:\n",y); for(k=0;k<n;k++) printf("%4d",aa[k]); printf("\n"); wwjt(); } void wwjt() { FILE *IN,*OUT; int n; int i[10]; int o; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Read FILE Error"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Write FILE Error"); } for(n=0;n<10;n++) { fscanf(IN,"%d",&i[n]); } fun(i,&n,3); for(o=0;o<n;o++) { fprintf(OUT,"%d\n",i[o]); } fclose(IN); fclose(OUT); } 答案:---------------------- int i,j; for(i=0;i<*n;) { if(bb[i]==y) {for(j=i;j<*n;j++) bb[j]=bb[j+1]; *n=*n-1; } else i++; } ---------------------- 第13题 (10.0分) 题号:317 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:求出N×M整型数组的最大元素及其所在的行坐标及 列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。 例如:输入的数组为: 1 2 3 4 15 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。 ------------------------------------------------*/ #define N 4 #define M 3 #include <stdio.h> void wwjt(); int Row,Col; int fun(int array[N][M]) { /**********Program**********/ /********** End **********/ } main() { int a[N][M],i,j,max; printf("input a array:"); for(i=0;i<N;i++) for(j=0;j<M;j++) scanf("%d",&a[i][j]); for(i=0;i<N;i++) { for(j=0;j<M;j++) printf("%d",a[i][j]); printf("\n"); } max=fun(a); printf("max=%d,row=%d,col=%d",max,Row,Col); wwjt(); } void wwjt() { FILE *IN,*OUT; int iIN[N][M],iOUT,i,j; IN=fopen("in.dat","r"); if(IN==NULL) { printf("Please Verify The Currernt Dir..it May Be Changed"); } OUT=fopen("out.dat","w"); if(OUT==NULL) { printf("Please Verify The Current Dir.. it May Be Changed"); } for(i=0;i<N;i++) for(j=0;j<M;j++) fscanf(IN,"%d",&iIN[i][j]); iOUT=fun(iIN); fprintf(OUT,"%d %d %d\n",iOUT,Row,Col); fclose(IN); fclose(OUT); } 答案:---------------------- int max,i,j; max=array [0][0]; Row=0; Col=0; for(i=0;i<N;i++) {for(j=0;j<M;j++) if(max<array [i][j]) {max=array [i][j]; Row=i; Col=j;} } return(max); ---------------------- 第14题 (10.0分) 题号:392 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 功能:求一批数中最大值和最小值的积。 ------------------------------------------------*/ #define N 30 #include "stdlib.h" #include <stdio.h> void wwjt(); int max_min(int a[],int n) { /**********Program**********/ /********** E- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 考试 系统 语言 题库 程序设计 导出 113
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文