《国开C语言程序设计形考任务四试题及答案.docx》由会员分享,可在线阅读,更多相关《国开C语言程序设计形考任务四试题及答案.docx(10页珍藏版)》请在第一文库网上搜索。
1、一、选择题(共30分,每小题2分)试题1假定有structBOOKchartit1e40;f1oatprice;structBOOKbookf,则不正确的语句为()。选择一项:“a.structBOOK*x=ma11oc(book);1 b.structBOOKx=C+Programming,27.0);c.structBOOK*=ma11oc(sizeof(structBOOK);d.structBOOK*x=ibook;试题2假定有structBOOKchartit1e40;f1oatprice;book;,则正确的语句为()。选择一项:2 a.structBOOKx=&book;f*b.
2、structBOOK*x=ibook;c.structBOOKx=ca11oc(BOOK);d.structBOOK*x=BOOK;试题3在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是()。选择一项:ca.句点b.冒号Gc.分号rd.逗号试题4假定一个结构类型的定义为structAinta,b;doub1ec;则该类型的长度为()。选择一项:ra.8b.10c.12d.16试题5假定一个结构类型的定义为structDinta;D*next;,则该类型的长度为()。选择一项:ra.4*b.8rc.12d.16试题6假定要访问一个结构指针变量X中的数据成员a,则表示方法为()。选择一项
3、:ra.x.ab.x-ac,x(a),d.xa试题7与结构成员访问表达式xmame等价的表达式为()。选择一项:Ca.-nameb.8tx-name*c.(tx)-named.(*x)-name试题8假定一个链表中结点的结构类型为structAAintdata,structAA*next;M,则next数据成员的类型为()O选择一项:a.structAAb.structAA*c.AAd.int试题9假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为P的结点时,应执行的操作为()。选择一项:a.p-next=fb.p-next=f和f=pc.f=p-ne
4、xtd.f-net=p和f=p试题10标准输入设备键盘的文件流标识符是()。选择一项:a.stdinb.stdoutc.stderr,d.stdio试题11表示文件结束符的符号常量为()。选择一项:a.eofb.Eof*C.EOF1d.feof试题12C语言中打开一个数据文件的系统函数为()。选择一项:a.fgetcQb.fputc()c.fc1oseOd.fope0试题13从一个数据文件中读入以换行符结束的一行字符串的系统函数为()。选择一项:a.gets()b.fgets()Cc.getc()d.fgetc()试题14向一个二进制文件中写入信息的函数fwrite()带有的参数个数为()。选
5、择一项:ra.1rb.2rc.3Cd.4试题15在C语言中,为只写操作打开一个文本文件的方式为()。选择一项:ra.ab.r+rc.rd.w二、判断题(共40分,每小题2分。叙述正确则回答“是“,否则回答否)试题16在结构类型的定义中,其中的数据成员可以是本身类型的直接对象。选择一项:r对错试题17在结构类型的定义中,允许出现结构类型不完整的超前定义。选择一项:G对r错试题18定义结构类型的变量时,不能够同时进行初始化。选择一项:r对错试题19使用一个结构类型时,必须一起使用关键字struct和类型标识符。选择一项:G对r错试题20假定一个结构类型的定义为“structAintabA*c;,则
6、该类型的长度为12。选择一项:G对r错试题21假定一个结构类型的定义为ostructBinta5;char*b;,则该类型的长度为201,选择一项:r对错执行CaNOC(n,8)函数调用时,将动态分配得到8*n个字节的存储空间。选择一项:C对r错试题23执行ma11oc(sizeof(structBB)函数调用时,得到的动态存储空间能够保存具有structBB结构类型的一个对象。选择一项:日对r错试题24假定要访问一个结构对象X中的由a指针成员所指向的对象,则表示方法为x.a。选择一项:r对G错试题25假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为p-bo选择一项:r对
7、G错试题26与结构成员访问表达式(*fp).score等价的表达式是fp-scorej选择一项:对r错试题27在C语言中,对二进制文件的所有不同打开方式共有6种。选择一项:。对试题28C语言中的标准输入和输出设备文件都属于字符文件。选择一项:6对r错试题29在一个磁盘数据文件的文件名中,文件主名和扩展名都是必须的,不可省略。选择一项:r对G错试题30在数据文件打开方式字符串中,字符r、W和a具有确定的含义,分别代表读、写和追加方式。选择一项:6对r错试题31一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。选择一项:仃对r错试题32C语言系统中提供一个用来描述文件属性的类型标
8、识符为FI1Eo选择一项:6对r错试题33每次只能向文本文件中写入一个字符,不能一次写入一个字符串。选择一项:试题34对:进制文件进行读和写操作将使用相同的系统函数。选择一项:r对仃错试题35在C语言中,系统函数fseek()用来移动数据文件中的文件位置指针。选择一项:G对r错三、写出下列每个程序运行后的输出结果(共15分,每小题5分)试题36#inc1udestructWorkercharname15;姓名intage;年龄f1oatpay;工资);voidmai0structWorker=wanghua,52,4300);structWorkery,*p;y=x;p=&x;printf(%
9、s%d%6.2n,.name,y.age,p-pay);)wanghua524300试题37#inc1ude#inc1udestructWorkercharname15;姓名intage;年龄f1oatpay;工资;voidmai0structWorkerx;char*t=1iouting;intd=38;f1oatf=3493;strcpy(.name,t);x.age=d;x.pay=f;printf(,%s%d%6.0fn,.name,xage,x.pay);)Iiouting392493试题38#inc1udestructWorkercharname15;intage;f1oatpay
10、;int1ess(structWorkerr1,structWorkerr2)if(r1.ager2.age)return1;e1sereturnO;)voidmai0structWorkera4=abc,25,2420,def,58,4638),ghi,49z4260,jk,z36,3750;structWorkerx=aO;inti;for(i=1;i4;i+)if(1ess(x,ai)x=ai;printf(,%s%d%6.0fn,.name,x.age,x.pay);)def584638四、写出下列每个函数的功能(共15分,每小题5分)试题39voidQA(structWorkera。
11、,intn)inti;for(i=1;inet;)returnc;)假定structIntNode的类型定义为:structIntNodeintdata;IntNode*next;统计出以表头指针为f的链表中结点的个数。试题41voidxw1(char*fname)FI1E*fout=fopen(fname,w);chara20;Printf(每个字符串长度小于20,字符串end作为结束标志n);whi1e(1)scanf(,%s,a);if(strcmp(a,end)=0)break;fputs(azfout);fputc(,n,fout);)fc1ose(fout);)把从键盘上输入的若干个字符串保存到由fname参数所指定的文本文件中。