二级C语言题库4.pdf
《二级C语言题库4.pdf》由会员分享,可在线阅读,更多相关《二级C语言题库4.pdf(145页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1套题一、程序填空题通罐欺霸费脑舞,使程序得出正确的结宝息加划II信片下通向文巴番算数收at舶述的仅正fur级le入遭fi填调。箱是码为线Ak西!P名划功话书1的乩程的改下更文也生,考行在删放或黄仃序增的电写的着序和块序源不程名露:定姓数在意给、个请注号一编为果需2 一#include#include#define N 5typedef struct int num;char name10;char tel10;STY PE;void check();/*found*7int fun(_ 1_ *std)/*f u n d*/2 *fp;int i;if(fp=fopen(myfile5.d
2、at,7,wbM)=NULL)return(O);printf(nOutput data to file!nH);for(i=0;iN;i+)/*f u n d*/fwrite(&stdi,sizeof(STY PE),1,_3_);fclose(fp);return(1);)main()STY PE s10=l,aaaaa,llllll,l,bbbbb;,222222/l,ccccc;333333/l;,ddddd;,444444,l/eeeee,555555;int k;k=fun(s);if(k=l)printf(,Succeed!);check();else)printf(Fail!)
3、;void check()FILE*fp;int i;STY PE s10;if(fp=fopen(myfile5.dat,rb)=NULL)printf(Fail!n);exit(O);printf(HnRead file and output to screen:n);printf(n num name teln);for(i=0;iN;i+)fread(&si,sizeof(STY PE),l,fp);printf(%6d%s%sn,si.numzsi.name,si.tel);)fclose(fp);)二、程序改错题t到的序AB能不fun逆,它,斑雌觌使球蹿鬣.C望谭如1目勺灯田示Is
4、攵DmlrrnMo司需序要尊当则程不想:正:定n,如改意给鞭请注功连CDAB1能接即CD出增是律EE正行3,DC确或果,结好S中的字符按正序存放符串/include#include void fun(char*s,char*t)int i,si;si=strlen(s);/*!QUP|*/for(i=0;i=sl;i+)ti=si;for(i=0;isl;i+)tsl+i=ssl-i-l;/*f u n d*/tsl=0;)main()chars100,t100;printf(nPlease enter string s:);scanf(%s,s);fun(s,t);printf(The re
5、sult is:%sn,t);)三、程序编写题福辱空1:1嘉郁数津上改填修中膏方不括据花数的的Un此在糙仅41文乳后二数中一的依。函数数上该位位位用两个个调.卜口口fl a 1-l在=4源函语祸.放a=分主干用是次当野若fur式依;改的数方数如意勿写函的位翟请编并个你合和入#include 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:%dn,c);NONO();void NONO
6、()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*rf,*wf;int i,a,b;long c;rf=fopen(”K:k0124010001in.dat,”r);wf=fopen(,K:k0124010001out.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);)第2套题一、程序填空题给定程序的功能是:从 键盘输入若 干 行 文 本(每任不超过80个字假),写到文 件 喈
7、i l e t x t粗 用-1 (独立一行)隹为早符也输入结束的标志。然后将文件的内容读出显示在屏票上。文件的读写分别由自定义函数1&正6乂坊口和出61 6*1实现。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源矍序存放在考生文件西下的BLANKl.C中。不容增若或删行,也不符更改程序的结构!#include#include#includevoid WriteText(FILE*);void ReadText(FILE*);main()FILE*fp;if(fp=fopen(myfile4.txtzw)=NULL)printf(open fail!n);exi
8、t(O);WriteText(fp);fclose(fp);if(fp=fopen(Hmyfile4.txt,7r)=NULL)printf(open fail!n);exit(O);ReadText(fp);fclose(fp);/*found*/void WriteText(FILE char str81;1)printf(nEnter string with-1 to end:nM);gets(str);while(strcmp(str/-l)!=O)/*found*/fputs(_2_,fw);fputs(n,fw);gets(str);)void ReadText(FILE*fr)c
9、har str81;printf(nRead file and output to screen:n);fgets(str,81zfr);while(!feof(fr)/*found*/printf(”%s“,3 _);fgets(str,81,fr);)二、程序改错题给定程序M0DI1.C中函数fun的功能是:从低位开始取上的数,根茨:构.成.一.个.新.数.放.在.t.中.。.高.位.仍,一在,高一位、,低一位,量 s 中奇数位例 如,当s 中的数为:7654321时,t 中的数为:7531。请改正程序中的错误,使它能得出正确的结果。注 意:不要改动main函数,不容增行或删行,也不得更改
10、程序的结构!#include/*f u n d*/void fun(long s,long t)long sl=10;*t=s%10;while(s 0)s=s/100;*t=s%10*sl+*t;/*fou nd*/sl=sl*100;)main()long s,t;printf(nPlease enter s:);scanf(%ld,&s);fun(s,&t);printf(The result is:%ldn,t);)三、程序编写题学生的记录由学号和成绩组成,N名学生的数据已在主函数中欺入结构体数组一 电.通 编 海 数 f u n,它的功能是:把分数最低的学生数强放在b断指的数组中,注
11、 恚 务 数 金 低 的 看 生 可 熊 不 止 一 个,函数返回分数最低图学生的人数。注 意:部分源程序在发件PR0G1.C文件中。请勿改动主函式你编写的若干语句。_ uPROGl.C 文件中。福口其它函数中的任何内容,仅在函数fun的花括号中填入#include#define N 16typedef struct char num10;int s;STREC;int fun(STREC*a,STREC*b)main()STREC sN=GA05,85,GA03,76zGA02,69,GA04,85,GA01,z91/,GA07/72/,GA08/64,GA06,1/87zGA015/85,
12、GA013,91/GA012/64,GA014,91,GA011,91zGA01764,GA018/64/,GA016772;STREC hN;int i,n;FILE*out;n=fun(szh);printf(The%d lowest score:n,n);for(i=0;in;i+)printf(%s%4dn”,hi.num,hi.s);printf(n);out=fopenCKAXkOlWAOlOOOlWout.datVw);fprintf(out,%dn,n);for(i=0;in;i+)fprintf(out,%4dn,hi.s);fclose(out);第3套题一、程序填空题果。
13、注意:函数f u n啊熊篇演翳0以咯它们的平方根写到名为“再 顺 庄 送 出 显 示 送 屏 蟹。使程序得出正确的结源矍序存放在考生文件旁下的BLANKl.C中。不辱增忏或删行,也不编更改程序的结构!#include#include int fun(char*fname)FILE*fp;int i,n;float x;if(fp=fopen(fname,w)=NULL)return 0;for(i=l;i=10;i+)/*Qgp J*fprintf(_1_ J%d%fn,i/sqrt(double)i);printf(nSucceed!n);*!2;printf(nThe data in fi
14、le:n);y*Q1jp*/if(fp=fopen(3 Jr)二二 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);)二、程序改错题给定程底M ODH.C中fun函数的功能是:将n个无序整数从小到大排序。请改正徨序中的错误,使它能黄出正确的结果。注意:不要改动main函数,不悖增行或删行,也不得更改程序的结构!#include#include
15、 void fun(int n,int*a)int i j p,t;for(j=0;j n-l;j+)P=j;/*found*Ifor(i=j+l;iai)/*f u n d*!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(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
16、(n,aa);fun(n,aa);printf(nAfter sorting%d numbers:n,n);putarr(n,aa);)三、程序编写题1/L:白白一z/la第bi?。并个编合和你函的位翟请写数方数如意勿的翡在45源函句同:放分主语用是次当野干fur式依,:改若数数上触踪位位位希RO缄两个千斯雁个和和(匕数四的此在北怕仅251鳌数望。入改填修中膏方不括据花数的的Un 1i力数aC后3任#include void fun(int a,int b,long*c)main()int a,b;long c;void NONO();printf(lnput a b:);scanf(%d%d
17、,&a,&b);fun(a,b,&c);printf(The result is:%ldn,c);NONO();)void NONO()/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*rf,*wf:int i,a,b;long c;rf=fopen(K:k0124010001in.dat,/r);wf=fopen(K:k0124010001out.datzw);for(i=0;i 1UnewFnal的。sf中N量勺下划线处填入正确的内容并把下划线删除,使程序得出正确的结注 意:源程序存放在考生文件隽下的BLANK1.C中。不想增存或删行,也不痔更改程序的结构!#i
18、nclude include int fun(char*source,char*target)FILE*fs/ft;char ch;/*f u n d*/if(fs=fopen(source,_1_)=NULL)return 0;if(ft=fo pen(target,w,)=NULL)return 0;printf(nThe data in file:n);ch=fgetc(fs);/*found*/while(!feof(_2_)putchar(ch);/*f u n d*/fputc(ch,_3一);ch=fgetc(fs);fclose(fs);fclose(ft);printf(nn
19、);return 1;)main()char sfname20=myfilel,tfname20=,myfile2;FILE*myf;int i;char c;myf=fopen(sfname/w);printf(HnThe original data:n);for(i=l;i30;i+)c=,A+rand()%25;fprintf(myf/%c/c);printf(%c,c);fclose(myf);printf(nn);if(fun(sfname,tfname)printf(Succeed!);else printf(Fail!);二、程序改错题给定盆簪储墙鬻矗霸鬻雄上为偶数的数依例如,当
20、S中的教为:87653142时,t 屯药数为:次取出,8642。请改正程序中的错误,使它能空出正确的结果。注意:不要改动main函数,不停增行或删行,也不得更改程序的结构!#include void fun(long s,long*t)int d;long sl=l;*t=0;while(s 0)d=s%10;/*f0 u n d*/if(d%2=0)*t=d*sl+*t;si*=10;)/*found*/s=10;)main()long s,t;printf(nPlease enter s:);scanf(n%ld,&s);fun(s,&t);printf(The result is:%ld
21、n/1);)三、程序编写题函数f u n 的功能是:将s 所指数的字符外,其余的全都删除;串中。.例如,若s 所指字符串中的内容为:ABCDEFG1 2 3 456”,其史字符A的ASCH码值为奇数,因此应当删除;其 中 翔 B的ASCH同值为偶数,但在数细中的下标为一 4 一 的人5,1 1 租值为得数,所在数组中的下标也为偶塔推。最片t 所能函数组中的内容应是:2 46”。奇数,因此也应当删除;而字符2 隹薮,因此不应当删除,其它唳此类一一.注意:部分源程序存在文件PR0 G1.C中。请勿改是 主函薮m ai 通)其它函数中的任何内容,仅在函数f u n 的花括号中填入你编写的若干语句。#
22、include#include void fun(char*s,char t)main()(char s100,t100;void NONO();printf(nPlease enter string S:);scanf(%s,s);fun(s,t);printf(nThe result is:%sn,t);NONO();void NONO()/*本函数用于打开文件,输入数据,调用函数,输出数据,关 闭 文 件*/char s100,t100;FILE*rf,*wf;int i;rf=fopen(”K:k0124010001in.dat“Jr);wf=fopenCKrWkOlWAOlOOOlW
23、out.datVw);for(i=0;i 10;i+)fscanf(rf,%s,s);fun(s,t);fprintf(wf,%sn,t);)fclose(rf);fclose(wf);)第5套题一、程序填空题域入果中到。给的链请注定数表在意n序已建立一个点,头结点的单向链表,链表中的各结点按结点数黑 翳 畿 翻 盘 辔 莓 蠲 靠 的 值 放 入 一 个 新 结 点 并 插下划线处填入正确的内容并把下对删除,使程序得出正确的结源矍序存放在考生文件旁下的BLANK1.C中。不导增存或删行,也不得更改程序的结构!#include/include#d efinetypedefN 8struct l
24、ist int data;struct list SLIST;void fun(SLIST*next;*h,int x)SLIST*p,*q,*s;s=(SLIST*)malloc(sizeof(SLIST);/*f u n d*/s-data=_1_;q=h;p=h-next;while(p!=NULL&xp-data)/*found*/q=_2;p=p-next;s-next=p;/*found*/q-next=_3_;)SLIST*creatlist(int*a)SLIST*h,*p,*q;int i;h=p=(SLIST*)malloc(sizeof(SLIST);for(i=0;id
25、ata=ai;p-next=q;p=q;)p-next=O;return h;)void outlist(SLIST*h)SLIST*p;p=h-next;if(p=NULL)printf(nThe list is NULL!n);else printf(nHead);do printf(-%d,p-data);p=p-next;while(p!=NULL);printf(-Endn);main()SLIST*head;int x;int aN=11,12,15,18,19,22,25,29;head=creatlist(a);printf(nThe list before inserting
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 语言 题库
限制150内