收藏 分销(赏)

万维考试系统-C语言题库-程序设计题导出-113道.doc

上传人:xrp****65 文档编号:5917208 上传时间:2024-11-23 格式:DOC 页数:186 大小:421KB
下载 相关 举报
万维考试系统-C语言题库-程序设计题导出-113道.doc_第1页
第1页 / 共186页
万维考试系统-C语言题库-程序设计题导出-113道.doc_第2页
第2页 / 共186页
万维考试系统-C语言题库-程序设计题导出-113道.doc_第3页
第3页 / 共186页
万维考试系统-C语言题库-程序设计题导出-113道.doc_第4页
第4页 / 共186页
万维考试系统-C语言题库-程序设计题导出-113道.doc_第5页
第5页 / 共186页
点击查看更多>>
资源描述

1、一、程序设计 共113题 (共计1130分)第1题 (10.0分) 题号:390/*-【程序设计】-功能:编写函数求1100中奇数的平方和。 结果为166650.000000。-*/#include 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() 函数中输出。-

2、*/#include void wwjt(); main() int i,j,s,a33; for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); s=fun(a); printf(Sum=%dn,s); wwjt();int fun(int a33) /*Program*/ /* End */ void wwjt() FILE *IN,*OUT; int m; int n; int i33; int o; IN=fopen(in.dat,r); if(IN=NULL) printf(Read FILE Error); OUT=fopen(out.dat,w

3、); if(OUT=NULL) printf(Write FILE Error); for(m=0;m3;m+) for(n=0;n3;n+) fscanf(IN,%d,&imn); o=fun(i); fprintf(OUT,%dn,o); getch(); fclose(IN); fclose(OUT);答案:-int sum;int i,j;sum=1;for(i=0;i3;i+) sum=sum*aii; return sum;-第3题 (10.0分) 题号:324/*-【程序设计】-功能:能计算从1开始到n的自然数中偶数的平方的和,n由 键盘输入,并在main()函数中输出。(n是偶

4、数)-*/#include void wwjt(); int fun(int n) /*Program*/ /* End */ main() int m; printf(Enter m: ); scanf(%d, &m); printf(nThe result is %dn, 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) print

5、f(Write FILE Error); for(c=1;c=5;c+) fscanf(IN,%d,&t); o=fun(t); fprintf(OUT,%dn,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数的个位和百位上。 例如:当a45,b=1

6、2。调用该函数后,c=4251。 -*/#include 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: %ldn, c); wwjt(); void wwjt ( ) FILE *rf, *wf ; int i, a,b ; long c ; rf = fopen(in.dat, r) ; wf = fo

7、pen(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=%ldn, 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 void

8、wwjt(); int fun(int a,int n) /*Program*/ /* End */ main() int a10=1,3,6,9,4,23,35,67,12,88; int y; y=fun(a,10); printf(y=%dn,y); wwjt();void wwjt() FILE *IN,*OUT; int iIN10,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(OU

9、T=NULL) printf(Please Verify The Current Dir. it May Be Changed); for(j=0;j10;j+) for(i=0;i10;i+) fscanf(IN,%d,&iINi); iOUT=fun(iIN,10); fprintf(OUT,%dn,iOUT); fclose(IN); fclose(OUT);答案:-int i,k=0; float s=0,ave; for(i=0;in;i+) s+=ai; ave=s/n; printf(%f ,ave); for(i=0;iave)k+; return k;-第6题 (10.0分)

10、 题号:355 /*-【程序设计】-功能:对长度为8个字符的字符串,将8个字符按降序排列。例如:原来的字符串为CEAedcab,排序后输出为edcbaECA。-*/Firefox答案:- int i,j; char t; for(i=0;inum;i+) for(j=i+1;jnum;j+) if(sisj) t=si;si=sj;sj=t;-第7题 (10.0分) 题号:44/*-【程序设计】-功能:求出二维数组周边元素之和,作为函数值返回。二 维数组的值在主函数中赋予。-*/#define M 4#define N 5#include void wwjt(); int fun(int aM

11、N)/*Program*/* End */main()int aMN=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=%dn,y);wwjt();void wwjt()FILE *IN,*OUT;int iINMN,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 Veri

12、fy The Current Dir. it May Be Changed);for(k=0;k10;k+) for(i=0;iM;i+) for(j=0;jN;j+) fscanf(IN,%d,&iINij);iOUT=fun(iIN);fprintf(OUT,%dn,iOUT);fclose(IN);fclose(OUT);答案:-int s=0; int i,j; for(i=0;iM;i+) s=s+ai0+aiN-1; for(j=1;jN-1;j+) s=s+a0j+aM-1j; return s;-第8题 (10.0分) 题号:339/*-【程序设计】-功能:判断整数x是否是同构

13、数。若是同构数,函数返回1; 否则返回0。x的值由主函数从键盘读入,要求不大 于100。说明:所谓“同构数”是指这样的数,这个数出现在它的 平方数的右边。例如:输入整数5,5的平方数是25,5是25中右侧的数,所 以5是同构数。-*/#include void wwjt(); int fun(int x) /*Program*/ /* End */main() int x,y; printf(nPlease enter a integer numbers:); scanf(%d,&x); if(x100) printf(data error!n); exit(0); y=fun(x); if(

14、y) printf(%d YESn,x); else printf(%d NOn,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, %dn,o ) ; fclose(IN)

15、; 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 void wwjt(); void copy(char str1,char str2) /*Program*/ /* End */main() void copy(); char c140,c240; gets(c1); copy(c1,c2); puts(c2); wwjt();void wwjt

16、() FILE *IN,*OUT; char i100; char o100; 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,%sn,o); fclose(IN); fclose(OUT);答案:-int i; for(i=0;str1i!=0;i+) str2i=str1i; str2i=0;-第10题 (10.0分) 题号:

17、310/*-【程序设计】-功能:计算并输出给定整数n的所有因子之和(不包括1与 自身)。注意:n的值不大于1000。例如:n的值为855时,应输出704。-*/#include void wwjt(); int fun(int n) /*Program*/ /* End */ main() printf(s=%dn,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 C

18、hanged); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. it May Be Changed); for(i=0;i5;i+) fscanf(IN,%d,&iIN); iOUT=fun(iIN); fprintf(OUT,%dn,iOUT); fclose(IN); fclose(OUT);答案:-int s=0,i; for(i=2;in;i+) if(n%i=0)s=s+i; return s;-第11题 (10.0分) 题号:354/*-【程序设计】-功能:求小于lim的所有素数并放

19、在aa数组中,该函数返回 所求出素数的个数。-*/#include#include#define MAX 100void wwjt(); int fun(int lim,int aaMAX) /*Program*/ /* End */main() int limit,i,sum; int aaMAX; printf(Please input ainteger:); scanf(%d,&limit); sum=fun(limit,aa); for(i=0;isum;i+) if(i%10=0&i!=0) printf(n); printf(%5d,aai); wwjt();void wwjt()

20、 int i,j,array100,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;isum;i+) fprintf(wf, %7d, arrayi); fprintf(wf, n); fclose(rf); fclose(wf);答案:- int n=0; int i,j; for(i=2;i=lim;i+) for(j=2;ji;j+) if(i%j=

21、0) break; if(j=i) aan+=i; return n;-第12题 (10.0分) 题号:341/*-【程序设计】-功能:删除所有值为y的元素。数组元素中的值和y的值由 主函数通过键盘输入。-*/#include #include#include#define M 20void wwjt(); void fun(int bb,int *n,int y) /*Program*/ /* End */main() int aaM,n,y,k; printf(nPlease enter n:);scanf(%d,&n); printf(nEnter %d positive number:

22、n,n); for(k=0;kn;k+) scanf(%d,&aak); printf(The original data is:n); for(k=0;kn;k+) printf(%5d,aak); printf(nEnter a number to deletede:);scanf(%d,&y); fun(aa,&n,y); printf(The data after deleted %d:n,y); for(k=0;kn;k+) printf(%4d,aak); printf(n); wwjt();void wwjt() FILE *IN,*OUT; int n; int i10; in

23、t 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;n10;n+) fscanf(IN,%d,&in); fun(i,&n,3); for(o=0;on;o+) fprintf(OUT,%dn,io); fclose(IN); fclose(OUT);答案:- int i,j; for(i=0;i*n;) if(bbi=y) for(j=i;j*n;j+) bbj=bbj+1; *n=*

24、n-1; else i+; -第13题 (10.0分) 题号:317/*-【程序设计】-功能:求出NM整型数组的最大元素及其所在的行坐标及 列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。例如:输入的数组为: 1 2 3 4 15 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。-*/#define N 4#define M 3#include void wwjt(); int Row,Col;int fun(int arrayNM) /*Program*/ /* End */ main() int aNM,i,j,max; printf(input a

25、 array:); for(i=0;iN;i+) for(j=0;jM;j+) scanf(%d,&aij); for(i=0;iN;i+) for(j=0;jM;j+) printf(%d,aij); printf(n); max=fun(a); printf(max=%d,row=%d,col=%d,max,Row,Col); wwjt();void wwjt() FILE *IN,*OUT; int iINNM,iOUT,i,j; IN=fopen(in.dat,r); if(IN=NULL) printf(Please Verify The Currernt Dir.it May Be

26、 Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. it May Be Changed); for(i=0;iN;i+) for(j=0;jM;j+) fscanf(IN,%d,&iINij); iOUT=fun(iIN); fprintf(OUT,%d %d %dn,iOUT,Row,Col); fclose(IN); fclose(OUT);答案:-int max,i,j;max=array 00;Row=0;Col=0;for(i=0;iN;i+) for(j=0;jM;j+) if(maxarray ij) max=array ij; Row=i;Col=j;return(max);-第14题 (10.0分) 题号:392/*-【程序设计】-功能:求一批数中最大值和最小值的积。-*/#define N 30#include stdlib.h#include void wwjt(); int max_min(int a,int n) /*Program*/ /* E

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服