国家二级c语言上机考试分类编程题.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《国家二级c语言上机考试分类编程题.docx》由会员分享,可在线阅读,更多相关《国家二级c语言上机考试分类编程题.docx(100页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、编程题1、请编官函数ftin,育能是:设砺M整型二维数组中最大元素的值,并格皿值返回调用函数.注意:部分源程序在文件PR0G1.C中.请勿改动主函数main和其它函数中的任何内容,仅在函数firn的花括号中填入你编写的若干语句.#include #define M 4int fun (int aM) main() int arrt2M=5,8,3,45,76,412,82;void NONOQ;printf(nmax =%dn fun(arr);NONO();)void NONO ()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE*wf;int arrM=5,8
2、,3,90,76,-4,12,82);wf = fopen(out.dat,w);fprintf(wf, nmax=%dnn, fun(arr);fclose(wf);)【参考答案】int fun (int aM)(int iJ,max=a00;for(i=0;i2;i+)for(j=0;jM;j+)if(maxaij) max=aij; return max;)2,请编写函数版i,其功能是:找出2xM整型二维数组中最大元素的值,并将此值返回调用函数。 注意:部分源程序在文件PR0G11中.请勿改动主函数main和其它函数中的任何内容,仅在函数firn的花括号中填入你编写的若干语句.#incl
3、ude #define M 4int fun (int aM)main() int arr2M=5,8,3,45,76,-4,12,82) ;void NONO ();printf(max =%dn fun(arr);NONO();void NONO 0/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE*wf;int arrM=5,8,3,90,76,412,82;wf=fopen(out.datVwn);fprintf(wf, ,max=%dnH, fun(arr);fclose(wf);【参考答案】int fun (int aM)(int iJ,max=a00;
4、for(i=0;i2;i+)for(j=0;jM;j+) if(maxaij) max=aij;return max;编写函数fim,具功能是:求出倒皿0之间能甥或11整除,但府洞时被刷11整除的所有整数,并将其放在漏指的数 组中,通过碰回这些数的个数.注意:惭原程糕文件PR0G1,C丸诗嫩动主碑main袂它酸中的任何内容,仅在破血械帏入体耦的若千语句.#include void fun (int *a, int *n) main() int aa1000, n, k ;void NONO ();fun ( aa, &n );for ( k = 0 ; k n ; k+ )if(k + 1)%
5、 10= 0) printf(AnH);else printf(%5dM, aak);NONO();)void NONO ()/*本函数用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/ int aa1000, n, k ;FILE *fp;fp = fopen(,out.dat,;,wH);fun ( aa, &n );for ( k = 0 ; k n ; k+ )if(k + 1)% 10 = 0) fprintf(fp, nM);else fprintf(fp, H%5d, aak);fclose(fp);【参考答案】void fun (int *a, int *n)
6、(int ij=0;for(i=l;i=100ft;i+)/*求1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数,并放入数组a中*/if(i%7=0| |i%ll=0)&i%77!=0) aj+=i;n=j;)4、规定输入的字符串中只包含字母和嗥编写函数加,其功能是:M除字符串中所有的*号.编写酸时,不得使用畸 言提供的字符串函数.例如,字符串中的内容为:*A*BC*DEF*G*,删除后字符串中的内容应当是:ABCDEFG.注意:部分流卷存在文件PRQG1,时.请勿改动主螺mai部耗函数中的任何内容,仅在函数近的花括号中填入你绢翩若干的语句.#include void fu
7、n( char *a)main() char s81;void NONO ();printf(HEnter a string:n);gets(s);fun( s);printf(The string after deleted:n);puts(s);NONO();)void NONO()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE *in, *out;int i ; char s(81 ;in = fopen(,in.dat,T,);out = fopen(out.dat,“w“);for(i = 0;i 10; i+) fscanf(in, %s, s);fu
8、n(s);fprintf(out, M%snM, s);)fclose(in);fclose(out);)【参考答案】void fun( char*a )(int ij=0;for(i=0;ai!=0;i+)if(ai!=*)aU+=ai;/*若不是要删除的字符*则留下*/aj=0;编写函数firn,具功能是:实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连挎到pl所指的字符串的 后面.例如,分别输入下面两个字符串:FirstStringSecondString程序黜FirstString SecondStnng注意:部分源程存在文件PRQGL时.谙勿改动主函数mai
9、n和其它函数中的任何内着仅在函数fim的花括号中填入你络写的若干语仇#include void fun(char pl, char p2) main()charsl80,s240 ;void NONO ();printf(Enter si and s2:n);scanf(,%s%s, si, s2); printf(,sl=%sn, si);printf(,s2=%sn, s2);printf(Invoke fun(sl,s2):n0);fun(sl, s2);printfCfter invoking:nH);printf(n%snM, si);NONO();void NONO ()/*本函数
10、用于打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/inti;FILE *rf, *wf;char si80, s240| ;rf= fopen(in.dat,“r“);wf=fopen(,out.dat,wn);for(i = 0 ; i 10 ; i+) fscanf(rf, %s, si);fscanf(rf, H%sH, s2);fun(s1, s2);fprintf(wf, M%snM, si);fclose(rf);fclose(wf);【参考答案】void fun(char pl, char p2)(int ij;for(i=0;pli!=0;i+);ford=0
11、;p2j!=0u+)pli+=p2j;某学生的m录由学号、打谟程幅和平均分组成,学号和项课程的成绻已在主函数中给出,请编写函数加,其功能 息求出该胜的平均分,辙a记录的翻喊员中.例如,学生的成绻是:85.5,76,69.5,85,91,72,64,5, 87.5,则他的平均分应为78H5. 注意:部分源程用在文件PRQGL时.请勿改动土都物侬而其它函数中的任何内容仅在函数ftm部位中境入你络写的若干隹句.Sinclude #define N 8 typedef struct char numL10; double sN; double ave; STREC;void fun(STREC *a)
12、 main () STREC s=GA005”, 85. 5, 76, 69. 5,85,91,72,64.5,87. 5;int i;void NONO ();fun ( &s );printf (z,The %ss student data:n, s. num);for(i=0;iN; i+)printf(%4. lfn”, s. si);printf (nave=%7. 3fn”, s. ave);NONO();)void NONO()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE *out ;int i, j ; STREC s10 = GA005”,
13、85.5, 76, 69. 5,85, 91, 72,64.5, 87. 5,GA001”, 82.5, 66, 76. 5,76, 89, 76,46.5, 78. 5,GA002”, 72.5, 56, 66. 5,66, 79, 68,46.5, 58. 5,GA003”, 92.5, 76, 86. 5,86, 99, 86,56.5, 88. 5,GA004”, 82,66. 5, 46. 5,56, 76, 75,76.5, 63. 5,GA006”, 75.5, 74, 71. 5,85, 81, 79,64.5, 71. 5,*GA007*, 92. 5,61, 72.5, 8
14、4,79, 75,66.5,72.5,GA008”, 72. 5, 86, 73.5, 80,69, 63,76.5,53.5,GA009”, 66. 5,71, 74.5, 70,61, 82,86.5,58.5,GA010”, 76, 66. 5, 75.5, 60,76, 71,96.5,93.5,);out = fopen(out. dat, w);for(i = 0 ; i 10 ; i+) fun(&si);fprintf(out, %7. 3fn, si. ave);)fclose(out);)【参考答案】oid fun(STREC *a)Idouble ave=0.0;int
15、i;for(i=0;iave=a-ave+a-s i ;/*求各门成绩的总和*/a-ave/=N;/*求平均分*/解学生的成绩在主函数中放入一个带头节点的链表结构中,城旨向链表的头节点.请编与函数血,其功能是:求出 平均分,并由函数值返回.例如,若学生的成绩是:85 76 69 85 91 72 64 87,则平均分应当是:78.625.注意 部分源程弃在文件PROGLC中.请勿改动主函数mai部其它降数中的任何内容,仅在函数firn的花括号中填入你编写的若干语句.#include Sinclude #define N 8 struct slist double s; struct slist
16、 *next;); typedef struct slist STREC; double fun( STREC *h )STREC * creat( double *s) STREC *h,*p,*q; int i=0;h=p=(STREC*)malloc(sizeof(STREC);p-s=0;while(is=si; i+; p-next=q; p=q;p-next=0;return h;)outlist( STREC *h) STREC *p;p=h-next; printf(head);do printf If”, p-s) ;p=p-next;while(p!=0);printf(n
17、n);)main() double s N = 85, 76, 69, 85, 91, 72, 64, 87), ave;void NONO ();STREC *h;h=creat( s ) ; outlist(h);ave=fun( h );printf (z,ave= %6. 3fn,z, ave);NONO O ;)void NONO()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE *in, *out ;int i, j ; double sN,ave;STREC *h ;in = fopen( in. dat , r );out = fopen(out
18、 dat, w);for(i = 0 ; i 10 ; i+) for(j=0 ; j next;while(p!=NULL)ave=ave+p-s;p=p-next;return ave/N;8、编写函数痴,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过越回.例如,若输入17,则应输出:4 6 8 9 10 12 14 15 16.注意:部分源程序在文件PR0G1.C中.请勿改动主函数maiir和其它函数中的任何内容,仅在函数firn的花括号中填入你编写的若干语句.#include void fun( int m, int *k, int xx) main()(
19、int m, n, zz100;void NONO ();printf ( ,znPlease enter an integer number between 10 and 100:);scanf( %d,&n );fun( n, &m, zz );printf ( ,znnThere are %d non-prime numbers less than %d:,m, n );for( n = 0; n m; n+ )printf( n %4d”, zzn);NONO();void NONOO(/*请在此函数内打开文件,输入测试数据,调用fun函数, 输出数据,关闭文件。*/int m, n,
20、 zz 100;FILE *rf, *wf ;rf = fopen(in.dat, r);wf = fopen(outdat”, w);fscanf ( rf, %d,&n );fun ( n, &m, zz );fprintf (wf, %dn%dn”, m, n );for( n = 0; n m; n+ )fprintf (wf, %dn, zzn);fclose(rf);fclose(wf);)【参考答案】void fiin( int m, int *k, int xx)(int i,j,n=O;for(i=4;im;i+) /*找出大于1小于整数m的非素数*/for(j=2;ji;j
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 国家 二级 语言 上机 考试 分类 编程
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内