二级C语言题库1.docx
《二级C语言题库1.docx》由会员分享,可在线阅读,更多相关《二级C语言题库1.docx(132页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1套题#i-娄itH 人da确点的5.正 fur级le入 遭fi填 调。毁 是码为线 W野节名为 功话率 的电写的 序和块序 程名置 定姓数在 给、个请 号一中构 C吉 阖 BL程 的改 下更 港 件正 文也 生, 考行 在删 放或 也俨 源不编为果ude #include #define N 5 typedef struct int num;char name10;char tel10;JSTYPE;void check();/* * found* int fun(1_ *std) /* fo und*I-2_ *fp; int i;if(fp=fopen(myfile5.dat/wb)=
2、NULL) return(O);printf(nOutput data to file !n);for(i=0; iN; i+)*found*/ fwrite(&stdi, sizeof(STYPE), 1,3);fclose(fp);return (1);)main() STYPE s10=l/,aaaaa/llllll/l;bbbbb,222222,/l;,ccccc,/333333/ l,”ddddd”J444444”,L“eeeee”J555555”;int k;k=fun(s);if (k=l) printf(Succeed!H); check(); elseprintf(Fail!
3、);)void check() FILE *fp; int i;STYPE s10;if(fp=fopen(myfile5.dat/rb)=NULL)printf(Fail !n); exit(O);printf(nRead file and output to screen :n);printf(*n num name telnn);for(i=0; iN; i+) fread(&si,sizeof(STYPE),l, fp);printf(%6d %s %sn,si.num/si.name/si.tel);fclose(fp);)二、程序改错题给定程序M0DI1.C中函数fun的功能是:先
4、将在字符串s中的字符按正序存放 到t串中,密后把s中的字符按逆序连接到漳的后面。例如:当s中的定位里为:ABCDE”吼贝U t中的字符串应为,ABCDEEDCBA”。请改正程序中的锚吴,使它能空出正确的结果。注意:不要改动main函数,不椁增行或删行,也不得更改程序的结构!#include #include void fun (char *s, char *t) int i, si;si = strlen(s);/* f0 und*/for( i=0; i=sl; i +)ti = si;for (i=0; isl; i+)tsl+i = ssl-i-l;tsl = 0;main() char
5、stlOO, t100;printf(nPlease enter string s:); scanf(%s, s);fun(s, t);printf(The result is: %sn, t);三、程序编写题函数fun的功熊是:将两个两位数的正整数a、b合 合并的方式是:嗡般的十位和个位数依次放在c数的斗1、整姒加仕c ,位上,b数的,)和个位数依次放在c数的百位和个位上。例如,当a=45, b=12时,调用该函数后,c=4152。注意:部分源程序存在文件PR0G1.C中。数强3件IN. DAT中的数据不得修改。请勿改粉主函薮mai向其它函数中的任何幡,仅在函数fun的花括导中填 入你编写的
6、若干语句。#include void fun(int a, int b, long *c)main() int a,b; long c;void NONO ();printf(lnput a b:n); scanf(%d%dz &a, &b);fun(a, b, &c);printf(The result is: %dn/ c);NONO();)void NONO ()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE *rf, *wf;int i, a,b; long c;rf = fopenCKiWkOlWAOlOOOlWin.dat, r);wf = fopen
7、fKAXkOlWAOlOOOlWout.datVw);for(i = 0 ; i 10 ; i+)fscanf(rf, ,%d,%d/ &a, &b);fun(az b, &c);fprintf(wf, a=%d/b=%d/c=%ldn/ a, b, c);)伺ose(rf);fclose(wf);第2套题一、程序填空题文件盟瞟道制膘监羸登豁题鼐黑常露端内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结 果注意:源程序存放在考生文件隽下的BLANK1.C中。不容增存或删行,也不得更改程序的结构
8、!#include #includeincludevoid WriteText(FILE *);void ReadText(FILE *);main() FILE *fp;if(fp=fopen(,myfile4.txt/w)=NULL) printf( open fail!n); exit(O); WriteText(fp); fclose(fp);if(fp=fopen(myfile4.txt,r)=NULL) printf( open fail!n); exit(O); ReadText(fp); fclose(fp); )* *found* * */void WriteText(FIL
9、E _1_) char str81;printf(nEnter string with -1 to end :n);gets(str);while(strcmp(str/,-l)(=O) /*found*/ fputs(2,fw); fputs(n,fw);gets(str);)void ReadText(FILE *fr) char str81;printf(nRead file and output to screen :n); fgets(str,81,fr); while( !feof(fr) * *found* * */ printf(%s,-3_); fgets(str,81,fr
10、);)给定程序M0DI1.C中函数fun的功能是:从低位开始取出长整型变量s中奇数位 上的数,俵茨构成一个新数放在t中。高位伤在高位,低位仍在低位:构成一个新数放在t中。高位仍在高位,低位仍在低位。二、程序改错题例如,当s中的数为:7654321町,t中的数为:7531。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不椁增行或删行,也不得更改程序的结构!#include /* fo und*/ void fun (long s, long t) long sl=10;*t = s% 10;while ( s 0) s = s/100;*t = s%10 *sl + *t
11、;/*found*/si = si *100;)main() long s, t;printf(nPlease enter s:M); scanf(%ld &s);fun(s, &t);printf(The result is: %ldn, t);),函数返回分数最低的学生的人数。三、程序编写题学生的记录由学号和成绩组成,N.S学生的数据己在主函数中四人结构体数组 s%.谓编番数fun,它的功能是:把分数最低的学生数据放在b断指的数组中,PR0G1.C文件中。注意:部分源程序在受住PR0G1., .#incl请勿改翱主函薮mai丽箕它函数中的任何内容,仅在函数fun的花括号中填入 你编写的若干
12、语句。ude #define N 16 typedef struct char num10; int s; STREC;int fun( STREC *az STREC *b )( ) main() STREC sN=,GA05z85,GA03/76,,GA02,z69,GA04,85, GA01/91/,GA07/72/GA08/64/GA06,87/ GA015/85/GA013,91/GA012/64zGA014z91/ ,GA011/91,GA017,/64/GA018/64/GA016/72;STREC hN;int izn;FILE *out;n=fun( s,h );printf
13、(The %d lowest score :nzn);for(i=0;in; i+)printf(%s %4dnM,hi.num/hi.s);printfCXn1);out = fopenCKiWkOlWAOlOOOlWout.datVw);fprintf(out, dn,n);for(i=0;in; i+)fprintf(outz %4dnzhi.s); fclose(out);)第3套题一、程序填空题给定程序史,函数fun的呦3是:将自然麴10以及它们的平方根写到名为 inyfile3. txt的文本文伴中,麴信即阿匠读出叁T在屏幕上。请在程序的下划枝处填入正赢内容并把T划线喧,使程序得出
14、正确的结 果。#incl注意:源程序存放在考生文件隽下的BLANK1.C中。 不得增存或删行,也不暮更改程序的结构!ude #include int fun(char *fname) FILE *fp; int i,n; float x;if(fp=fopen(fname/ wH)=NULL) return 0;for(i=l;i=10;i+)/*found*/#include #include void fun (int n, int *a ) int i,j, p,t;for (j = 0; jn-l; j+ ) p = j;*/fprintff_1,%d %fn,i,sqrt(doubl
15、e)i);printf(nSucceed! n);/*found*2 _;printf(nThe data in file :nn);if(fp=fopen(3;r)=NULL) return 0;fscanf(fp/%d%f/&n/&x);while(!feof(fp) printf(%d %fn/n/x); fscanf(fp/%d%f/&n/&x); fclose(fp);return 1;)main() char fname=myfile3.txt; fun(fname);)二、程序改错题给定程序M0DI1. C中fun函数的功能是:粉n个无序整数从小到大排序。请改正建序中的错误,使它
16、能强出正确而结果。注意:不要改动main函数,不特增行或删行,也不得更改程序的结构!for (i=j+l; iai)#incl/* f 0 und*/ t=i;if (p!=j)t = aj; aj = ap; ap = t;) void putarr( int n, int *z) int i;for (i = 1; i = n; i+, z+ ) printf( %4d”,*z );if( !(i%10) printf( n); printf(nM);)main() int aa20=9,3,0,4,l,2,5,6,8,10,7, n=ll;printf( nnBefore sorting
17、 %d numbers:n,n ); putarr( n, aa );fun( n, aa);printf( nAfter sorting %d numbersAn, n ); putarr( n, aa );)三、程序编写题函数fun的哪E是:将两个两位数的正整数a、b合并形成一个整数放在c中。 合并的方式是:嗝热的十位和个位数依次放在c数的个技和百位上,b数的1位 和个位数依次放在c数的十位和千位上。,当a=45, b=12时,调用该函数后,c=2514o:部分源程序存在文侔PR0G1.C中。数敷件IN. DAT中的数据不得修改。请勿改反)主函薮main其它函数中的任何福,仅在函数fun的
18、花括号中填入 你编写的若干语句。ude void fun(int a, int b, long *c)main() int a,b; long c;void NONO ();printf(lnput a b:);scanf(%d%d/ &a, &b);fun(a, b, &c);printf(The result is: %ldn/ c);NONO();void NONO ()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE *rt *wf;int i, a,b; long c;rf = fopenCKiWkOlWAOlOOOlWin.dat, r);wf = fo
19、pen(K:k0124010001out.dat,J,w);for(i = 0; i 10; i+) fscanf(rf, ”d,%d“,&a, &b);fun(az b, &c);fprintf(wf, a=%d/b=%d/c=%ldn/ a, bz c);)fclose(rf);fclose(wf);)第4套题一、程序填空题给定程序的功能是:调,赛制成功时函数返回值为1 失败时返回值为0。在 容输出乳终端屏幕。主函致中源支件名放在变量sfname中,目标文件名变 JEtfname 中。请在程序南下划线处填入正确的内容并把下划线删除,使程序得出正确的结c吉 需 BL程 的改 下更 港 件不
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 语言 题库
限制150内