新视野二级C语言上机题库4.docx
《新视野二级C语言上机题库4.docx》由会员分享,可在线阅读,更多相关《新视野二级C语言上机题库4.docx(146页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1套题、程序填空题砲人da确 週的5.正 fur级le入 遭fi填 调。顎 是同为线 3皆名力 功话率 的电写的 序和块序 程名龍 定姓数在 给、个请 号中构 AN序 BL程 的改 下更 件不 文也 生, 考行 在删 放或 査E 序增 源不编为果/include/include/define N 5 typedef struct int num;char name10;char tel10;STYPE;void check();/* f und*/ int fun(1*std)int/*found*/*fp;if(fp=fopen(myfile5.dat7wb)=NULL) return(O
2、);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,Ll/,bbbbbz222222,l;,ccccc,333333L lzddddd,/444444,/l,eeeee;555555;int k;k=fun(s);if (k=l) printf(Succeed!); check(); elseprintf(Fail!);void check() FIL
3、E *fp; int i;STYPE s10;if(fp=fopen(myfile5.dat/rb)=NULL)printf(Fail !nH); exit(O);printf(HnRead 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);先将在字符串S中的字符按正序存放二、程序改错题H中,難把s中的呈符按逆序连覧t串的后面。应为:A
4、BCDEEDCBA”。笥申为:ABCDE”时,请改正程序中的错误,使它能卷出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!/include #include void fun (char *sz char *t) int i, si;si = strlen(s);/* f und*/for( i=0; i=sl; i +) ti = si;for (i=0; isl; i+) tsl+i = ssl-i-l;tsl = 0;main() char 5100, t100;printf(nPlease enter string s:); scanfs”, s);fu
5、n(s, t);printf(The result is: %sn“,t);三、程序编写题函数fun的功能是:将两个两位数的正整数a、b合 合并的方式是:喟酸的十位和个位数依次放在c数的二和个位数依次放在C数的百位和个位上。例如,当a=45, b=:12时,调用该函数后,c=4152o注意:邮分源程序存在文件PR0G1.C中。数齡件IN. DAT中的数据不得修改。请勿改动主国票7: n廿食爾粘rh砧局rt!英 A7左歩粘c.砧尤幷其rtr+吉 入你编写的若干语句。mai福口其它函数中的任何内容,仅在函数fun的花括号中填#include void fun(int a, int b, long
6、*c)main() int azb; long c;void NONO ();printf(lnput a b:“); scanf(%d%d/ &a, &b);fun(a, b, &c);printf(The result is: %dn, c);NONO();)void NONO ()/本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。FILE *rf, *wf;int , azb; long c;rf = fopen(K:k0124010001in.datz r);wf = fopen(K:k0124010001out.da Jw”);for(i = 0 ; i 10 ; i+)
7、 fscanf(rfz %dz%dz &az &b);fun(az bz &c);fprintf(wfz a=%dzb=%dzc=%ldnz az bz c);fclose(rf);fclose(wf);第2套题、程序填空题给定程序的功能是:从键盘喻入若干行文本(每程不超过80个字徴),写到 文件冊txta用1(独立一行)作为字符串输入结束的标志。然后将文件 内苕决出显不在屏票上。文件的读身分身岫自定义函竅ReadTextWriteText实请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结注意:源野序存放在考生文件隽下的BLANK1.C中。不替增或删行,也不福更改程序的结构!
8、/include#include /include void WriteText(FILE *);void ReadText(FILE *);main() FILE *fp;if(fp=fopen(,myfile4.txt;w)=NULL) printf( open fail!lnM); exit(O); WriteText(fp);fclose(fp);if(fp=fopen(myfile4.txt/r)=NULL) printf( open fail!n); exit(O); ReadText(fp);fclose(fp);void WriteText(FILE 1) char str81
9、;printf(nEnter string with -1 to end :n); gets(str);while(strcmp(str,l)!=O) 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) /*nd*/printf(%s,3);fgets(stc81Jr);J 7耀勁中S 量开位.甚 位高为靜 低在数幾幅 是談t中正行 能博,出增功,
10、g在43它,好放65使数酸数7 ,函授新XJ:误iin冲个妙错Ima的动中改Mo构序要 星当程不 1,正 定,如改意 给数注/include /*found* void fun (long s, long t) long sl=10;*t = s % 10;while ( s 0) s = s/100;*t = s%10 *sl + *t;sl = sl*100;main() long s, t;printf(”nPlease enter s:); scanf(”ld, &s);fun(s, &t);printf(The result is: %ldn, t);三、程序编写题学生的记录由学号和
11、成绩组成,N名学生的数据己在主函数中放入结构体数组 s適编瞽数fun,它的功能是:把分数最低的学生数据放在b防指的数组中, 注魚数盘低的学生可熊不止个,函数返回分数最低留学生的人数。注意:部分源程序在殳住PR0G1.C文件中。请勿改动主函薮main和箕它函数中的任何内容,仅在函数fun的花括号中填入 你编写的若干语句。/include /define N 16 typedef struct char numflOl;int s; STREC;int fun( STREC *a, STREC *b )main() STREC sN=GA05/85/GA03/76/GA02/69/GA04/85/
12、 GA01,91/GA07#72/GA08/64/GA06#87/ GA015/85,GA013/91/GA012/64,GA014/91, ,GA011,91/GA017,1/64/GA018z64/GA016/72;STREC hN;int i,n;FILE *out;n=fun( s,h );printf(The %d lowest score :n,n);for(i=0;in; i+)printf(%s %4dn”,hi.num,hi.s);printf(n);out = fopen(K:k0124010001out.dat/wn);fprintf(out, dn”,n);for(i=
13、0;in; i+)fprintf(out, ,%4dn,hi.s);fclose(out);第3套题、程序填空题,函数fun的功给定程序里.一1nyfile3.txt的文本文件中,然后请在程序的下划枝处填入正确的内容耻疋:将自然数170以及它们的平方根写到名为顺序丿奉把使程序得出正确的结注意:源野序存放在考生文件隽下的BLANK1. C中。 不容增籽或删行,也不容更改程序的结构!#include#includeint fun(char *fname) FILE *fp;int i,n;float x;if(fp=fopen(fname, w)=NULL) return 0;for(i=l;i=
14、10;i+)/*-fQ|Jp|*/fprintf_1_,%d %fnJzsqrt(double)i);printf(nSucceed! nu);/* f und*/一2一;printf(nThe data in file :n);/*found*/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);
15、二、程序改错题给定程序M0DI1. C中fun函数的功能是:扬n个无序整数从小到大排序。 请改正建序中的错误,使它能醤出正确的结果。注意:不要改动main函数,不容增行或删行,也不得更改程序的结构!#include /include void fun (int n, int *a ) int i, j, p, t;for (j = 0; jn-l; j+ ) p = j;for (i=j+l; in-l; i+ ) /*found*t=i;if(p!=j)t = aU;aj = ap;ap = t;void putarr( int n, int *z) int i;for (i = 1; i
16、= n; i+, z+ ) printf( ”4d“,*z );if( !(i%10) printf( Hn); printf(n);)main() int aa20=9,3,0,4,1,2,5,6,8,10,7, n=ll;printf( nnBefore sorting %d numbers:n, n ); putarr( n, aa );fun( n, aa);printf( nAfter sorting %d numbers:n, n ); putarr( n, aa );)三、程序编写题案在45源函句 加:放分主语 蟬疋次当野干 fur式依,:改若 数方数如意勿的 函的位豐请写鮭的嫡
17、姬to函L中 四踢n该OG数 乱品林用PR函 宀匕 ,文其 将齡體興 義啓br此在 40俱仅 阳警 C数何 后1任 数e的数 賛。入 改填 修中 醤节 不括 据花 数的 的.,Un#include void fun(int a, int b, long *c)main() int a,b; long c;void NONO ();printf(lnputab:H);scanf(H%d%d, &a, &b);fun(a, b, &c);printf(The result is: %ldn/ c);NONO();void NONO ()/本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。
18、 FILE*rf,*wf;int i, azb; long c;rf = fopen(,K:k0124010001in.dat/ HrH);wf = fopen(K:k0124010001out.da Jw“);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);第4套题、程序填空题的,件定妻 旨呈示给定程序的功能是:阴用函数fun将:文件中,复制或功时函数位回值为1,失为 前関内容器岀到终瑞屏幕。
19、主函数中源文, 在变里t fname中使程序得岀正确的结注意,请在程序南下划线处填入正确的内容并把下划线删除,源程序存放在考生文件隽下的BLANK1. C中。不得增后或删行,也不彳專更改程序的结构!/include/include int fun(char *source, char *target) FILEchar ch;/*found*/if(fs=fopen(source,1)=NULL)return 0;if(ft=fopen(targetz w)=NULL)return 0;printf(nThe data in file :n);ch=fgetc(fs);/* f und*Iwh
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新视野 二级 语言 上机 题库
限制150内