国家二级(C语言)笔试模拟试卷245_第1页
国家二级(C语言)笔试模拟试卷245_第2页
国家二级(C语言)笔试模拟试卷245_第3页
国家二级(C语言)笔试模拟试卷245_第4页
国家二级(C语言)笔试模拟试卷245_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国家二级(C语言)笔试模拟试卷245

一、公共基础选择题(本题共70题,每题7.0分,共

10分。)

1、对建立良好的程序设计风格,下列描述中正确的是()。

A、程序应该简单.、清晰、可读性好

B、符号名的命名只需要符合语法

C、充分考虑程序的执行效率

D、程序的注释可有可无

标准答案:A

知识点解析:“青晰第一,效率第二”,在考虑到程序的执行效率的同时,一定要

保证程序清晰、可读:对符号名的命名,除了要符合语法要求外,还要具有一定的

含义;程序的注释可以帮助程序员理解程序,不是可有可无的。

2、将E-R图转换到关系模式时,实体与联系都可以表示成

A^e3,el,e4,e2

B、e2,e4,e3,el

C、e3,e4,el,e2

知识点解析:由栈“后进先出''的特点可知:A)中el不可能比e2先出,C)中el不

可能比e2先出,D)中栈是先进后出的,所以不可能是任意顺序。B)中出栈过程如

下图所示:[*]

3、有以下程序:main(){charstr[][10]={,'ChinaH;,Beijing,,),*P=str;printf(M%s\n",

P+10);}程序运行后的输出结果是O

A^China

B、Beijing

C、ng

D、ing

标准答案:B

知识点解析:本题中p+10表示字符串“Beijing”的地址,故正确答案为B。

4、下列选项中不属于软件生命周期开发阶段任务的是()。

A、软件测试

B、概要设计

C、软件维护

D、详细设计

标准答案:C

知识点解析:软件的生命周期可分为软件定义、软件开发及软件运行维护3个阶

段。其中软件定义阶段的主要工作有可行性研究与计划制定和需求分析等:软件开

发阶段的主要工作有概要设计、详细设计和测试等;软件运行维护阶段的主要工作

是软件的运行及后期的维护等。

5、下列工具中为需求分析常用工具的是()。

A、PAD

B、PFD

C、N-S

D、DFD

标准答案:D

知识点解析:需求分析常用的工具有数据流图(DFD)、数据字典(DD)、判定树和判

定表。PAD(问题分析图)、PFD(程序流程图)、N-S(盒式图)都是详细设U的常用工

具,不是需求分析的工具。

6、如果进栈序列为el、e2、e3、e4,则可能的出栈序列是()。

A、e3>el、c4、e2

B、e2、e4、e3、el

C、e3>e4>e2

D、任意顺序

标准答案:B

知识点解析:栈的特点是先进后出,可知el肯定是最后出栈的.因此iF确答案为

选项Bo

7、表达式的值是()。

A、整数4

B、字符4

C、表达式不合法

D、字符6

标准答案:A

知识点解析:在C语言中,字符都是变为其对应的ASCII码值来参加算术运算

的,但字符间的相对位置关系还是不变的,字符5和字符1的ASCII码值相差仍是

4。

8、下列对队列的叙述正确的是()。

A、队列属于非线性表

B、队列按“先进后出”原则组织数据

C、队列在队尾删除数据

D、队列按“先进先出”原则组织数据

标准答案:D

知识点解析:队列是“先进先出”的数据结构,栈是“先进后出”的数据结构,它们都

是特殊的线性表。队列在队头删除数据。

9、下列对于线性链表的描述中正确的是

A、存储空间不一定是连续,且各元素的存储顺序是任意的

13、存储空间不一定是连续,且前件元素一定存储在后件元素的前面

C、存储空间必须连续,且前件元素一定存储在后件元素的前面

D、存储空间必须连续,且各元素的存储顺序是任意的

标准答案:1

知识点解析:在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结

点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系

是由指针域来确定的。

10、软磁盘最外边的磁道数是()

A、0

B、1

C、39

D、79

标准答案:1

知识点解析:暂无解析

二、选择题(1分)(本题共〃题,每题7.0分,共〃

分。)

11、若i、J已定义成im型,则以下程序段中内循环体的总执行次数是()。

for(i=6;i>0;i—)for(j=0;j<4;j+-i-){...}

A、20

B、24

C、25

D、30

标准答案:B

知识点解析:本题考查的是嵌套f。「循环执行次数。对于外层i的循环中任何一个

i,内层j的循环中的j都要从0变化至l」3,j=4时退出循环;然后外层i循环的i减

少1,内层循环的i仍要从0变化到3,j=4时退出循环……直到外层i循环的i变

为0,退出i循环。所以执行多重循环时,对外层循环变量的每一个值,内层循环

的循环变量都要从初始值变化到终值。对外层循环的每一次循环,内层循环要执行

完整的循环语句。外层for语句执行6次,内层for语句执行4次,所以内循环体

执行6*4=24次。

12、对序线性表(23,29,34,55,60,70,78)用二分法查找值为60的元素时,

需要比较次数为()。

A、1

B、2

C、3

D、4

标准答案:C

知识点解析:根据二分法查找法需要两次:①首先将60与表中间的元素55进行

比较,由于60大于55,所以在线性表的后半部分查找。②第二次比较的元素是后

半部分的中间元素,将60与表中间的元素70进行比较,由于60小于70,所以在

线性表的前半部分查找。③第三次比较的元素是前半部分的中间元素,即60,这

时两者相等。即查找成功。

13、以下关于结构化程序设计的叙述中正确的是(),

A、一个结构化程序必须同时由顺序、分支、循环三种结构组成

B、结构化程序使用goto语句会很便捷

C、在C语言中,程序的模块化是利用函数实现的

D、由三种基本结构构成的程序只能解决小规模的问题

标准答案:c

知识之解析:结构化程序设计是指将待开发的软件系统划分为若干个相互独立的模

块,与具体的语句结构无关。Got。语句的滥用会导致程序的可读性降低。三种基

本结构构成的程序依然可以解决大规模的问题,只是不利于复用。

14、若有定义语句inta,b;doublex;则下列选项中没有错误的是()。

A、switch(x%2){caseO:a++;break;case1:b++;break;default:a++;

b++;}

switch((int)x/2.0){caseO:a++;break;case1:b++;break;default:

a++;b++:}

C^switch((int)x%2){caseO:a++:break;case1:b++;break:default:a++;

b++;)

D、switch((int)(x)%2){caseO.O:a++;break;case1.0:b++;break;

default:a++:b++:)

标准答案:C

知识点解析:C语言中switch语句中的表达式和case表达式都不能是浮点类型。

所以选Co

15、以下叙述中正确的是

A、C语言的源程序不必通过编译就可以直接运行

B、C语言中的每条可执行语句最终都将被转换成二进制的机器指令

c、c源程序经编译形成的二进制代码可以直接运行

D、C语言中的函数不可以单独进行编译

标准答案:2

知识点解析:本题考核的知识点是C程序从编写到生成可执行文件的步骤。C语言

采用编译方式将源程序转换为二进制的目标代码,编写好一个C程序到完成运行

一般经过以下几个步骤:编辑;编译,就是将已经编辑好的源程序翻译成二进制的

目标代码,经编译后的得到的二进制代码还不能直接执行,因为每一个模块往往是

单独编译的,必须把经过编译的各个模块的目标代码与系统提供的标准模块连接后

才能运行;连接,将各模块的二进制目标代码与系统标准模块经连接处理后,得到

具有绝对地址的可执行文件,它是计算机能直接执行的文件;执行,执行一个经过

编译和连接的可执行的目标文件。由以上定义可知,选项A、C、D均不正确°所

以,4个选项中选项B符合题意。

16、以下叙述不正确的是。

A、分号是C语言的必要组成部分

B、C程序的注释可以写在句的后面

C、函数是C程序的基本单位

D^主函数的名字不一定用main表示

标准答案:8

知识点解析:C语言的程序是由主函数main。开始运行,由主函数来调用其他函

数,所以D是错误的。

17、设x,y均为int型变量,且x=10,y=3,则priiHf("%d,%d\n”,x・,・y);语句的输出

结果是Q

A、10,3

B、9,3

C、9,2

D、10,2)

标准答案:8

知识点解析:C语言的自减运算符有前置与后置两种形式。当自减运算符前置时,

变量先自减一后再参与表达式运算;而后置时,变量先参与表达式运算后再自身减

18、己有定义和语句:doublea,b,c;scanf("%1f%1f%1f*,&a,&b,&c);:要

求给a、b、c分别输入10.0、20.0、30.0,不正确的输入形式是

A、10.0〈回车>20.0V回车,

B、10.0〈回车>2030V回车〉

C、1020V回车>30.0〈回车〉

D、10.0,20.0,30.0V回车,

标准答案:8

知识点解析:scanf函数要求格式控制串中的非格式控制字符,在输入数据时必须

按照格式控制的要求来输入。本题中格式控制申中在各个输入数据格式之间没用任

何分隔符号,所以从键盘输入数据时,不应该有“,”等分隔符,所以选项D)错

误。注意:选项A)、B)、C)都能正确的输入。

19>有如下程序main。{inty=3,x=3,z=l:printf("%d%d\n",(++x,++y),

z+2);}运行该程序的输出结果是()。

A、34

B、42

C、43

D、33

标准答案:4

知识点解析:首先看逗号表达式,逗号表达式中从左向右计算,最后该表达式的值

取最右边表达式的值,故该表达式的值为++y的值(因为++y的值为y的值加1即

4),算术表达式z+2的值为3,所以最后输出的值为4和3,所以,4个选项中选项

C符合题意。

20、以下定义语句中正确的是

A、chara='A'b='B';

B、floata=b=10.0;

C、inta=10,*b=&a;

D、float*a,b=&a;

标准答案:4

知识点解析:选项A中定义两个变量a和b,并赋初值,C语言中可以同时定义多

个变量,但变量之间必须用“,”隔开,显然,选项A中少了一个逗号“,”;选项B

中定义变量时用了连续的赋值语句,这在定义变量是不正确的;选项D定义一个

指针,然后定义了一个变量并让这个变量的初值为该指针变量,显然这这时的指针

变量还没初始化就被赋值给变量。

21、若要求从键盘读入含有空格字符的字符串,应该使用函数。

A、getc()

B、gcts()

C、getchar()

D、scanf()

标准答案:B

知识点解析:函数gelchar。的作用是从终端(或系统隐含指定的输入设备)输入一个

字符,且只能接受一个字符(回车符也算是一个字符),所以getchar。不能用宋读入

字符串。scanf()函数要求按一定的格式来输入,若同时输入多个字符串,则以空格

或回车分割,所以空格不能被识别为一个字符,也就无法读入空格字符。函数

gets。的作用是从终端输入一个字符串(包括空格)至字符数组,直到遇到换行符为

止,所以可以用来键盘读入空格字符。

三、选择题(2分)(本题共20题,每题1.0分,共20

分。)

22、下列程序的运行结果是()。#include<stdio.h>#defineADD(x)x+xmain(){int

m=l,n=2,k=3;ints=ADD(m+n)*k;printf("s=%d,',s);}

A、sum=18

B、sum=10

C>sum=9

D、sum=25

标准答案:B

知识点解析:本题考查带参数的宏的定义及相关运算:

s=m+n+m+n*k=1+2+1+2*3=10。

23、有以下程序:#include<stdio.h>main(){inti=0,a=0;while(i<20)

{for(;;){if((i%5)==0)break;elsei-;}i+=13,a+=i;)pfintf("%d\n",A);}

程序的输出结果是()。

A、62

B、63

C、23

D、36

标准答案:D

知识点解析:暂无解析

24、对以下说明语句的正确理解是inta[10]={6,7,8,9,10);

A、将5个初值依次赋给a[l]至a[5]

B、将5个初值依次赋给a[0]至a[4]

C、将5个初值依次赋给a⑹至a[10]

D、因为数组长度与初值的个数不相同,所以此语句不正确

标准答案:B

知识点解析:本题中,表达式将5个初值赋给a[0]至a[4],后面的部分,将自动被

补零。

25、在C语言中,只有在使用时才占用内存单元的变量,其存储类型是

A、autoflregister

B、extern和register

C、auto^0static

D、static^11register

标准答案:A

知识点解析:在C语言中只有自动变量和寄存器变量在使用时才占用内存单元。

26、若有说明charsl[30]="abc",s2[]="defghi”;,则在使用函数streamsl,s2)后,结果

是()。

A^si的内容更新为abedefghi

B、si的内容更新为defghi'O

C、si的内容更新为defghiabc'O

D、si的内容更新为abcdcfghi'O

标准答案:D

知识点解析:strcat(sl,s2)是把s2字符串连接到si字符串的末尾,要保证si能容纳

下连接后的字符串。

27、若有以下语句lypedefstructS{intg;charh;}T;以下叙述中正确的是()。

A、可用S定义结构体变量

B、可用T定义结构体变量

C、S是struct类型的变量

D、T是structS类型的变量

标准答案:B

知识点解析:语句lypedefstructS{intg;charh:}T的作用是用T作为stnietS{im

g:charh;)的简写,所以选B。

28二有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中

的三个连续结点。structnode{intdata;structnode*next;}*p,

现要将q

和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是

A、q->next=r->next;r->next=q;p->next=r;

B、q->next=r->next;p->next=r;r->next=q;

C^p->next=r;q->next=r->next;r->next=q;

D、r->next=q;q->next=r->next;p->next=r;

标准答案:D

知识点解析:暂无解析

29、有以卜程序#includevoidWriteStr(char*fn,char*str){FILE*fp;

fp=fopen(fn,HwM);fputs(str,fp);fclose(fp);)main(){WriteStr("tl.dat\

"start");WriteStr("tl.daf'/'end");)程序运行后,文件tl.dat中的内容是

A、start

end

C、startend

D^endrt

标准答案:B

知识点解析:暂无解析

30、有以下程序int*f(znt*x,int*y){if(*x<*y)returnX;elsereturny:)main()

{inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=f(p,q);

printf("%d,%d.%d\n",*p,*q,*r);}执行后输出结果是

A、7,8,8

B、7&7

C、8,7,7

D、8,7,8

标准答案:2

知识点解析:本题定义了一个返回值为指针的函数f(),此函数有两个指针型的形

参x和y)该函数的功能,是返回x和y指向的变量中值较小的那个指针变量。主函

数中定义了两个指针变量p和小并让它们指向了变量a和b,调用函数f(),返回指

向的变量值较小的指针变量,「的值为指针变量p的值(变量a的地址),因此最后

输出的*p、*q和,r的值是7,8和7。所以,B选项为所选。

31、有以下程序:main(){intk=5;while(-k)printf("%d",k-=3);printf("\n");)执行

后的输出结果是()。

A、1

B、2

C、4

D、死循环

标准答案:1

知识点解析:因为在while循环的循环条件中,一运算符是前缀形式,所以表达式

-k的值是k自减之后的值.程序开始时,将k的值初始化为5.然后进入while

循环,因为一k的值为4(非零),所以执行循环体输出k-=3的值1,此时k的值也

变为1。第2次执行循环条件,—k的值为0,所以循环结束。因此最后输出的结

果是1,故应该选择A。

32、有以卜程序:#include<stdio.h>main(){printf("%d\n",NULL);)程序运行后

的输出结果是()。

A、0

B、1

C、-1

D、NULL没定义,出错

标准答案:1

知识点解析:在C语言中NULL的ASCII码值为0,而输出函数要求以整形格式

输出,故最后的输出数为0。所以,4个选项中选项A符合愿意。

33、设a=l,b=2,c=3»d=4,则表达式aVb?a:cVd?a:d的结果为______。

A、4

B、3

C、2

D、1

标准答案:8

知识点解析:暂无解析

34>下列程序运行后,输出结果是_____o#include<stdio.h>#include<string,h

>fun(char,intn){chart,*s1,*52;sl=w;s2=w+n-l;while(sl<s2)(t=*sl++;

*sl=*s2—;*s2=t;}}main(){char*p;p="1234567";fun(p,strlen(p));puts(p);}

A、1234567

B、7654321

C、1711717

D、7177171

标准答案:4

知识点解析:暂无解析

35、已知n=1S.执行后,写入fp指向的文件的是«

A、15

B、1111

C、63

D、1111

标准答案:4

知识点解析:使用fprin【f()函数时,函数向文件输出的是ASCH码,特别在输出数

值时,输出的是该数值的ASCH码,而不是数值本身。

36、以卜程序的输出结果是#includeVstdio.h>main。{inta=15/b=21,m=0;

switch(a%3){caseO:m++;break:case1:m++;switch(b%2){default:m++;

case0:m++;break;))printf("%d\n",m);)

A、I

B、2

C、3

D、4

标准答案:1

知识点解析:switch语句的条件是“a%3=15%3=0",所以执行case0后面的语句,

m++;m=l,然后就执行break,跳出switch语句,所以最后输出的m的值为1。

注意:switch嵌套语句的使用。

37、若指针p已正确定义,要使p指向两个连续的整型动态存储单元,则正确语句

是()

A^p=2*(int*)malloc(sizeof(int));

B、p=(int*)calloc(2*sizeof(int));

C、p=(int*)malloc(2*sizeof(int));

D^p=2*(int*)calloc(sizeof(int));

标准答案:4

知识点解析:暂无解析

38、下面程序段的执行结果为()。inti=3,j=0,k=0;for(;i>0;-i){++k;do{++j;if

(i!=j)break;++k;)while(j<5);}printf("i=%dj=%dk=%d\n",i,j,k);

A、i=0j=4k=12

1=0j=5k=5

C、i=0j=4k=4

D、i=Oj=3k=3

标准答案:4

知识点解析:程序开始时(i,j,k)三个值分别为(3,0,0),然后进入for循环,由

于for的第一条语句空缺,所以不做初始化,此时i为3满足循环条件,进入循环

体。然后执行“++k;”使k变成1,再无条件进入do・while循环体执行“++j;”使j

变成1,此时i和j不相等所以执行break:语句跳出do-while循环。准备开始第二

遍for循环,i的值被减1,此时3个值分别为(2,1,1),i为2满足循环条件,进

入循环体。然后依次执行十十k;和十十j;使它们增1,此时i和j同为2相等,所以

跳过break;语句再执行一次++k;使k为3,由于此时j满足do-while的循环条

件,所以下一步回到前面执行do后面的++j;语句,使j为3,此时i和j不相等,

所以执行break;跳出do-whilc循环。准备开始第三遍for循环,i的值被减1,此

时3个值分别为(1,3,3),i为1满足循环条件,进入循环体。然后依次执行

++k;和++j;使它们增1,此时i和j不相等,所以执行break;跳出do-while循

环。准备开始第四遍for循环,i的值被减1,此时3个值分别为(0,4,4),i为0

不满足for语句的循环条件,所以执行循环体后面的printf()函数输出3个值,故正

确答案为C。

39、若有下列说明和语句,则对结构体变量st中成员i的引用方式不正确的是()。

Structstu{inti;intname;)st,*p;p=&st;

A、st.i

*p.i

C、(*p).i

D、p->i

标准答案:2

知识点解析:本题主要考查结构指针:p=&st,访问结构体的成员,可以通过结构

变量访问,即st.i,也可以用等价的指针形式即(作).i和p->i。

40、有以下程序:main(){inta[10]={l,2,3,4,5,6,7,

8,9,10),*p=&a[3],*q=p+2;printf(,'%d\n,\*p+*q);}

程序运行后的输出结果是。

A、16

B、10

C、8

D、6

标准答案:B

知识点解析:;数组a各元素a[0]〜a[9]的值依次为1〜10;在程序的说明部分,

指针变量p初始化为&a[3],即*p的值为4;指针变量q初始化为p+2,即

&a[3]+2,所以*q的值为6,所以*p+*q的值为10。

41、有以下程序#inelude(stdio.h>intf(intn);main(){inta=3,s;s=f(A);

8=s+f(A);\n",s);)mtf(intn){staticifita=1:n+=a++:returnn;}

程序运行后的输出结果是

A、7

B、8

C、9

D、10

标准答案:C

知识点解析:s=f(a)表达式第一次调用f(n)函数时。f(n)函数运行结果为n:4,

a=2,即s等于4;s=g+f(a)表达式第二次涮用f(n)函数时,f(n)函数运行结果为

n=5,所以得到s值为9。

四、公共基础填空题(本题共5题,每题1.0分,共5

分。)

42、二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是

标准答案:顺序存储(顺序方式存储)

知识点解析:二分法查找对表的要求是有序的顺序表,即第一要求是数据元素有

序,第二要求是按顺序方式存储。

43、在面向对象的程序没计中,类描述的是具有相似性质的一组【】。

标准答案:对象

知识点解析:将属性、操作相似的对象归为类,也就是说,类是具有共同属性、共

同方法的对象的集合。

44、与结构化需求分析方法相对应的是【】方法。

标准答案:结构化设计

知识点解析:与结构化需求分析方法相对应的是结构化设计方法。结构化设计就是

采用最佳的可能方法设计系统的各个组成部分以及各个成分之间的内部联系的技

术。也就是说,结构化设计是这样一个过程,它决定用哪些方法把哪些部分联系起

来,才能解决好某个具体且有清楚定义的问题。

标准答案:DBXEAYFZC

知识点解析:二叉树的中序遍历指在访问根结点、遍历左子树与遍历右子树这三者

中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且遍历左,右子树

时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。因此本题中序遍历的

结果为DBXEAYFZCo

46、设二叉树如下:对该二叉树进行后序遍历的

结果为【】。

标准答案:EDBGHFCA

知识点解析:后序遍历二义树的定义为:若二义树为空,则空操作;否则,后序遍

历左子树,后序遍历右子树,访问根结点。根据该规则,遍历结果应为

EDBGHFCA。

五、填空题(本题共70题,每题1.0分,共10分。)

47、以下程序的输出结果是()。#include<stdio.h>voidswap(int*a,int*B){int*t;

t=a:a=b:b=c;)main(){inti=3,j=5,*p=&i»*q=&j:swap(p,q);

printf("%d%d\n",*p,%);}

标准答案:35

知识点解析:本题考查函数中形参和实参的传递。在C语言函数中实参和形参传

递具有不可逆性,参数只能由实参传向形参,而不能由形参传向实参,虽然

函数的功能是实现两个数的交换,但由于没有返回值,故最终的输出结果为35。

48、下面程序的运行结果是______o#include<stdio.h>main()[inty,a;y=2,

a=l;while(y—!=-l){do{a*=y;a++;)while(y-);}printf("%d,%d”,a,y);)

A、1,-2

标准依索.

知识之解析:暂无解析

49、线性表的存储结构主要分为顺序存储结构和链式存储结构,队列是一种特殊的

线性表,循环队列是队列的()存储结构。

标准答案:顺序

知识点解析:顺序存储是把逻辑上相邻的节点存储在物理位置相邻的存储单元里,

节点间的逻辑关系由存储单元的邻接关系来体现,由此得到的存储表示称为顺序存

储结构。链接存储不要求逻辑上相邻的节点在物理位置上亦相邻,节点间的逻辑关

系是由附加的指针字段表示的,由此得到的存储表示称为链式存储结构。将队列存

储空间的最后一个位置绕到第一个,形成逻辑上首尾相接的圆环,这种形式的顺序

队列称为循环队列,它是队列的顺序存储结构。

50、下列程序运行的结果是ointk=0;voidfun(intm){m+=k,k+=m;

printf("m=%dk=%d",m,k++);}main(){inti=4;fun(i++);printf("i=%dk=%d\

n",i,k);}

标准答案:m=4k=4i=5k=5。

知识点解析:程序中k为全局变量,在主函数中,局部变量i=4.所以fun(i++)就

调用fun(4),在函数fun(4)中输出m=4,k=4.然后变量k++等于5,变量i++等于

5,所以主函数的prinlf("i=%dk=%d\n",i,k);语句输出i=5,k=5。

51、设有定义:FILE*fw;,请将以下打开文件的语句补充完整,以便可以向文本文

件readme.txt的最后续写内容。fw=fopen(',readme.txt",,'()")

标准答案:a

知识点解析:文件常用的打开方式”a”的作用是向文本文件尾增加数据。

52、以下程序运行后的输出结果是______。main(){inta[4][4]={{1,2,3,4),{5.

6,7,8),{11,12,13,14},{15,16,17,18));inti=O,j=O,s=O;while(i++<4)

{if(i==2||i==4)continue;j=0;do(s+=a[i][j];j++;)while(j<4);)

printf("%d\n",s);}

标准答案:92

知识点解析:暂无解析

53、有以下程序main(){chara,b,C,d;scanf("%c,%c,%d,%d",&a,

&b,&c,&d);printf("%c,%c,%c,%c\n"a,b,c,d);}若运行时从键盘上

输入:6,5,65,66〈回车>。则输出结果是______o

标准答案;6,5,A,B

知识点解析:暂无解析

54、以下程序的运行结果是_____o#include<string.h>typedefstruct

student{charname[10];longsno;floatscore;)STU;main(){STU

a=(nzhangsan",2001,95},b={nShangxian",2002,90},c={HAnhua",2003,95),d,*p-&d;

d=a;if{strcmp(a.nalne,)>O)d=b:if(strcmp(,)>0)d=c;

printf("%ld%s\n,,,d.sno,p>name);}

标准答案:2002Shangxian

知识点解析:本题考核的知识点是结构体类型的定义、赋初值以及字符串的比较。

本题中首先定义一个结阂体类型STU,镇结构体由一个长度为10的字符型数组、

一个long型变量和一个float型变量组成。接着在主函数中用STU定义了4个结构

体变量a、b、c、d,并且给a、b、c赋初值,然后定义?一个结构体指针p,并让

它指向变量d。然后让将变量a的值赋给变量d,接着通过两个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论