好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

2012年9月C试题库.pdf

167页
  • 卖家[上传人]:缘***
  • 文档编号:333170128
  • 上传时间:2022-09-01
  • 文档格式:PDF
  • 文档大小:24.11MB
  • / 167 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 全国计算机二级C语言上机题库注意:填空题填好答案要去掉下划线改错题*found*下面的一行为错误地方,直接按答案更正即可程序题答案只填在花括号中.(记得保存)第 01套:、填空题:程序通过定义学生结构体变量,存储了学生的学号、姓名和3 门课的成绩所有学生数据均以二进制方式输出到文件中函 数 fu n 的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其它学生的数据不变请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果注意:源程序存放在考生文件夹下BLANKLC中不得增行或删行,也不得更改程序的结构!给定源程序:i n c l ud e d e f i n e N 5t yp e d e f s t r uc t s t ud e n t l o n g s n o;c h a r n a m e 1 0 ;f l o a t s c o r e 3 ;S T U;vo i d f un(c h a r *f i l e n a m e,S T U n)F I L E *f p;/*f o un d*/f p 二 f o p e n(_1 _,r b+);/*f o un d*/f s e e k(_ 2 _,-(l o n g)s i ze o f (S T U),S E E K _ E N D);/*f o un d*/f wr i t e(&n,s i ze o f(S T U),1,_3_);f c l o s e(f p);m a i n OS T U t N =1 0 0 0 1,/zM a C h a o ,9 1,9 2,7 7,1 0 0 0 2,“C a o K a i”,7 5,6 0,8 8,1 0 0 0 3,L i S i ,8 5,7 0,7 8,1 0 0 0 4,F a n g F a n g*,9 0,8 2,8 7,1 0 0 0 5,Z h a n g S a n ,9 5,8 0,8 8;S T U n=1 0 0 0 6,Z h a o S i ,5 5,7 0,6 8,s s N ;i n t i,j;F I L E *f p;f p =f o p e n(s t ud e n t,d a t ,wb );f wr i t e(t,s i ze o f (S T U),N,f p);f c l o s e(f p);f p =f o p e n (s t ud e n t.d a t/z,“r b);f r e a d(s s,s i ze o f (S T U),N,f p);f c l o s e(f p);p r i n t f(n T h e o r i g i n a l d a t a :n n);f o r (j=0;j N;j+)p r i n t f (z/n N o:%l d N a m e:%-8 s S c o r e s:,s s j .s n o,s s j .n a m e);f o r (i=0;i 3;i+)p r i n t f (,z%6.2 fs s j .s c o r e i );p r i n t f(n);f un (s t ud e n t,d a t”,n);p r i n t f(n T h e d a t a a f t e r m o d i f i n g :n n );f p =f o p e n(s t ud e n t,d a t ,r b );f r e a d(s s,s i ze o f (S T U),N,f p);f c l o s e(f p);f o r (j=0;j N;j+)p r i n t f(z/n N o:%l d N a m e:8 s S c o r e s:,s s j .s n o,s s j .n a m e);f o r (i=0;i 3;i+)p r i n t f C%6.2 fs s j .s c o r e i );p r i n t f(n);)解题答案:/*第一 空*/f p 二 f o p e n(f i l e n a m e,r b+”);/*第二空*/f s e e k(f p,-(l o n g)s i ze o f(S T U),S E E K _ E N D);/*第三空*/f wr i t e(&n,s i ze o f(S T U),1,f p);二、改错题:给定程序MODI1.C中的函数Creatlink的功能是创建带头结点的单向链表,并为各结点数据域赋0 到m-1的值。

      请改正函数Creatlink中指定部位的错误,使它能得出正确的结果注意:不要改动m ain函数,不得增行或删行,也不得更改程序的结构!给定源程序:i n c l ud e#i n c l ud e t yp e d e f s t r uc t a ai n t d a t a;s t r uc t a a *n e xt;N O D E;N O D E *C r e a t l i n k(i n t n,i n t m)N O D E *h=N U L L,*p,*s;i n t i;/*o un c l*/p=(N O D E)m a l l o c(s i ze o f(N O D E);h=p;p-n e xt=N U L L;f o r(i=l;i d a t a=r a n d()%m;s-n e xt=p-n e xt;p-n e xt=s;p=p-n e xt;)/*f o un d*/r e t ur n p;o ut l i n k(N O D E *h)N O D E *p;p=h-n e xt;p r i n t f(n n T H E L I S T :n n H E A D );wh i l e (p)p r i n t f (-%d ,p-d a t a);p=p-n e xt;p r i n t f C r T);)m a i n ON O D E *h e a d;h e a d=C r e a t 1 i n k(8,2 2);o ut l i n k(h e a d);解题答案:/*f o un c l*/p=(N O D E *)m a l l o c(s i ze o f(N O D E);/*f o un c l*/r e t ur n h;三、程序题:请编写函数f un,函数的功能是:统计行字符串中单词的个数,作为函数值返回。

      一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始没有空格注意:部分源程序在文件P R O G 1.C 中请勿改动主函数m a i n 和其它函数中的任何内容,仅在函数f u n 的花括号中填入你编写的若干语句给定源程序:#i n c l u d e#i n c l u d e d e f i n e N 80i n t f u n(c h ar *s)m ai n()c h ar l i n e N;i n t n u m=0;v o i d N O N O ();p r i n t f(En t e r a s t r i n g:n);ge t s(l i n e);n u m=f u n(l i n e);p r i n t f(T h e n u m be r o f w o r d i s :%d n n,n u m);N 0N 0();)v o i d N O N O ()/*请在此函数内打开文件,输入测试数据,调 用 f u n 函数,输出数据,关闭文件/F I L E*r f,*w f ;i n t i,n u m ;c h ar l i n e N,*p ;r f 二 f o p e n(i n.d at ,r );w f =f o p e n(z,o u t.d at ,w);f o r(i =0;i 10;i+)f ge t s (l i n e,N,r f);p =s t r c h r (l i n e,n);i f(p !=N U L L)*p =0;n u m =f u n(l i n e);f p r i n t f (w f,%d n ,n u m);)f c l o s e(r f);f c l o s e(w f);)参考答案:i n t f u n(c h ar *s)(i n t k =1 ;w h i l e(*s)i f(*s =)k+;S+;1r e t u r n k;#第 02套:一、填空题:给定程序的功能是:从键盘输入若干行文本(每行不超过8 0个字 符),写到 文件m y f i l e 4.t x t中用T作为字符串输入结束的标志。

      然后将文件的内容读出显示在屏幕上文件的读写分别由自定义函数R e ad T e x t和Wr i t e T e x t 实现请在程序的卜.划线处填入正确的内容并把卜.划线删除,使程序得出正确的结果注意:源程序存放在考生文件夹下B L A N K 1.C中不得增行或删行,也不得更改程序的结构!给定源程序:i n c l u d e#i n c l u d e#i n c l u d e v o i d Wr i t e T e x t(F I L E*);v o i d R e ad T e x t(F I L E*);m ai n O F I L E*f p;i f(f p=f o p e n(*m y f i l e 4.t x t”,w)二 二N U L L)p r i n t f (,z o p e n f ai l!n);e x i t(0);Wr i t e T e x t (f p);f c l o s e(f p);i f (f p=f o p e n(z,m y f i l e 4.t x t,r):二N U L L)p r i n t f C*o p e n f ai l!n*);e x i t(0);R e ad T e x t(f p);f c l o s e(f p);)/*f o u n d*/v o i d Wr i t e T e x t(F I L E 1)c h ar s t r 81;p r i n t f(Xn En t e r s t r i n g w i t h -1 t o e n d :n);ge t s(s t r);w h i l e(s t r c m p(s t r,T)!=0)/*f o u n d*/f p u t s(_2,f w);f p u t s(n,f w);ge t s(s t r);)v o i d R e ad T e x t(F I L E*f r)c h ar s t r 81;p r i n t f(Xn R e ad f i l e an d o u t p u t t o s c r e e n :n);f ge t s(s t r,81,f r);w h i l e(!f e o f(f r)/*f o u n d*/p r i n t f (%s,_ 3_);f ge t s(s t r,81,f r);)解题答案:/*第-空*/v o i d Wr i t e T e x t(F I L E*f v)/*第二 空*/f p u t s(s t r,f w);f p u t s(n,f w);/*第三空*/p r i n t f(%s,s t r);二、改错题:给定程序M O D I 1.C中函数f u n的功能是:从低位开始取出长整型变量s中奇数 位 上 的数,依次构成个新数放在t中。

      高位仍在高位,低位仍在低位例如,当s中的数为:7654321时,t中的数 为:7531请改正程序中的错误,使它能得出正确的结果注意:不要改动m ai n函数,不得增行或删行,也不得更改程序的结。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.