C语言专升本考试练习题及答案2-2023背题版_第1页
C语言专升本考试练习题及答案2-2023背题版_第2页
C语言专升本考试练习题及答案2-2023背题版_第3页
C语言专升本考试练习题及答案2-2023背题版_第4页
C语言专升本考试练习题及答案2-2023背题版_第5页
已阅读5页,还剩123页未读 继续免费阅读

下载本文档

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

文档简介

试题说明

本套试题共包括1套试卷

每题均显示答案和解析

C语言专升本考试练习题及答案2(500题)

C语言专升本考试练习题及答案2

L[单选题]C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是______o

A)void

B)int

C)float

D)double

答案:B

解析:

知识点/选择题/C6函数与编译预处理/函数的基本概念

2.[单选题]假定X和Y为doubIe型,则表达式X=2,Y=X+3∕2的值是。

A)3.500000

B)3

02.000000

D)3.000000

答案:D

解析:

知识点/选择题/C2基本数据类型及表达式/简单表达式运算T

3.[单选题]在C语言中以下正确的叙述是()。(2分)

A)l.函数的定义和函数的调用均可以嵌套。

B)l.函数的定义和函数的调用均不可以嵌套。

01.函数的定义可以嵌套,但函数的调用不可以嵌套。

D)l.函数的定义不可以嵌套,但函数的调用可以嵌套。

答案:D

解析:

4.[单选题]字符串”∖∖∖22a,0∖n”的长度是_

Λ)8

B)7

06

D)5

答案:C

解析:

5.[单选题]执行下面程序片段的结果是O

Intx=23;

Do

(

Printf("%2d",X-);

)

While(!x);

A)打印出321

B)打印出23

C)不打印任何内容

D)陷入死循环

答案:B

解析:

知识点/选择题/C5循环结构程序设计/DO-WHILE循环T

6.[单选题]有以下程序段

Main()

{inta=5,*b,**c;

O&b;b=&a;

程序在执行了C=&b;b=&a;语句后,表达式:**C的值是

A)变量a的地址

B)变量b中的值

C)变量a中的值

D)变量b的地址

答案:C

解析:

知识点/选择题/C8指针/指向指针的指针

7.[单选题]下列选项中正确的语句组是_0

A)chars[8];s={"Beijing");

B)char*s;s={"Beijing");

C)chars[8];s="Beijing";

D)char*s;s="Beijing";

答案:D

解析:

知识点/选择题∕C8指针/指针变量定义与初始化T

8.[单选题]已知inti=5;执行语句i+=++i;i的值是

A)10

B)11

C)12

D)A,B,C答案都不对

答案:C

解析:

9.[单选题]有以下程序

Voidfun(int*a,inti,intj)

{intt;

If(i<j)

{t=aLi];a[i>a[j];a[j]=t;

Fun(a,++i,-j);

)

}

Main()

{inta口={l,2,3,4,5,6},i;

Fun(a,O,5);

For(i=0;i<6;i++)

Printf("%d",a[i]);

}

执行后输出结果是O

A)654321

B)432156

C)456123

D)l23456

答案:A

解析:

知识点/选择题/C8指针/[

10.[单选题]设有定义“intk=0;",下列选项的4个表达式中与其他3个表达式的值不相同的是

A)k++

B)k+=l

C)++k

D)k+1

答案:A

解析:

IL[单选题]以下叙述正确的是

A)do—while语句构成的循环不能用其他语句构成的循环来代替

B)do-While语句构成的循环只能用break语句退出

C)用do—while语句构成的循环,在WhiIe后的表达式为非零时结束循环

D)用do—while语句构成的循环,在WhiIe后的表达式为零时结束循环

答案:D

解析:

12.[单选题]已有定义:chara[]="xyz",b[]={'x','y','z');,以下叙述中正确的是

A)数组a和b的长度相同

B)a数组长度小于b数组长度

Oa数组长度大于b数组长度

D)上述说法都不对

答案:C

解析:

知识点/选择题/C7数组/字符数组初始化T

13.[单选题]以下列出C语言常量中,错误的是____o

A)0xFF

B)1.2e0.5

C)2L

D)'∖72'

答案:B

解析:

知识点/选择题/C2基本数据类型及表达式/常量T

14.[单选题]若定义:inta=511,*b=fea;,则Printf("%d∖n",*b);的输出结果为O0

A)无确定值

B)a的地址

0512

D)511

答案:D

解析:

15.[单选题]下列程序运行结果为:

#defineP3

#defineS(a)P*a*a

Main()

{intar;

ar=S(3+5);

printf("∖n%d",ar);

}

A)192

B)29

C)27

D)25

答案:B

解析:

16.[单选题]对以下说明语句inta[10]={6,7,8,9,10);的正确理解是O0

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

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

C)将5个初值依次赋给a[6]至a[10]

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

答案:B

解析:

17.[单选题]结构化程序设计所规定的三种基本控制结构是()。

A)输入、处理、输出

B)树形、网形、环形

C)顺序、选择、循环

D)主程序、子程序、函数

答案:C

解析:

18.[单选题]判断Char型变量Ch是否为大写字母的正确表达式是()。(2分)

ʌ)l.'A'<=ch<≡,V

B)l.(Ch>='A,)&(ch<='Z')

01.(ch>='A')&&(ch<='Z')

D)l.('A'<=ch)AND('Z'>=ch)

答案:C

解析:

19.[单选题]下列程序段的输出结果为()。

Inta=7,b=9,t;

T=a*=a>b?A、b;

Printf("%d",t);

A)7

B)9

C)63

D)49

答案:C

解析:

20.[单选题]设有以下定义和语句

Charstr[20]="Program",*p;

P=str;

则以下叙述中正确的是。

A)*p与str[0]中的值相等

B)Str与P的类型完全相同

C)Str数组长度和P所指向的字符串长度相等

D)数组Str中存放的内容和指针变量P中存放的内容相同

答案:A

解析:

知识点/选择题/C8指针/指针变量定义与初始化T

21.[单选题]以下叙述中正确的是()。

A)构成C程序的基本单位是函数

B)可以在一个函数中定义另一个函数

OmainO函数必须放在其它函数之前

D)所有被调用的函数一定要在调用之前进行定义

答案:A

解析:

22.[单选题]有以下程序

Main()

{inta[10]={l,2,3,4,5,6,7,8,9,10),*p=⅛a[3],*q=p+2;

Printf("%d∖n",*p+*q);

)

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

A)16

B)10

08

D)6

答案:B

解析:

知识点/选择题/C8指针/指针处理一维数组T

23.[单选题]以下叙述正确的是。。

A)在C程序中,main函数必须位于程序的最前面

B)C程序的每行中只能写一条语句

C)C语言本身没有输入输出语句

D)在对一个C程序进行编译的过程中,可发现注释中的拼写错误

答案:C

解析:

24.[单选题]有以下程序段

Structst

{intx;int*y;}*pt;

Inta[]={l,2},b[]={3,4};

Structstc[2]={10,a,20,b};

Pt=c;

以下选项中表达式的值为11的是O

A)*pt->y

B)pt->x

C)++pt->x

D)(pt++)->x

答案:C

解析:

知识点/选择题/C9结构体与共用体/用指针引用含有指针成员的结构体数组T

25.[单选题]以下选项中合法的实型常数是Oo

A)5E2.0

B)E-3

C).2E0

D)1.3E

答案:C

解析:

26.[单选题]文件操作的一般步骤是()。(2分)

ʌ)l.读/写文件f修改文件一关闭文件

B)l.打开文件一读/写文件一关闭文件

01.读/写文件一打开文件一关闭文件

D)l.读文件一写文件一关闭文件

答案:B

解析:

27.[单选题]Inta[10]={l,2,3,4,5,6,7,8}jint*p;P=&a[5];p[-3]的值是()。

A)2

B)3

04

D)不一定

答案:B

解析:

28.[单选题]以下程序的输出结果是_____o

MainO

{chars[]="159",*p;

P=s;

Printf("%c",*p++);

Printf("%c",*p++);

A)15

B)16

C)26

D)59

答案:A

解析:

知识点/选择题/C8指针/S指针与字符数组T

29.[单选题]下列程序运行后,若从键盘输入ABC!四个字符后,程序输出是。

ttinclude<stdio.h>

main()

(

voidreceiv();〃receiv函数的声明

receiv();

)

voidreceiv()

{charc;

c=getchar();

putchar(c);

if(c!='!')receiv();

putchar(c);

}

A)ABC!!

B)ABC!ABC!

C)ΛBC!!CBΛ

D)ABCABC

答案:C

解析:

30.[单选题]若变量均已正确定义并赋值,以下合法的C语言赋值语句是____o

A)x=y==5;

B)x=n%2.5;

C)x+n=i;

D)x=5=4+l;

答案:A

解析:

知识点/选择题/C2基本数据类型及表达式/表达式及语句合法性判断T

31.[单选题]若有语句int*point,a=4;和POint=&a;下面均代表地址的一组选项是()。

A)a,point,*fea

B)&*a,&a,*point

C)*&point,*point,&a

D)⅛a,fe*point,point

答案:D

解析:

32.[单选题]若有定义:int*p[3];,则以下叙述中正确的是o

A)定义了一个基类型为int的指针变量p,该变量具有三个指针

B)定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针

C)定义了一个名为*p的整型数组,该数组含有三个int类型元素

D)定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素

答案:B

解析:

知识点/选择题/C8指针/指针数组基础知识T

33.[单选题]有以下程序

Main()

{inta口={l,2,3,4,5,6,7,8,9,0},*p;

For(p=a;p<a+10;p++)printf("%d,",*p);

}

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

A)l,2,3,4,5,6,7,8,9,0,

B)2,3,4,5,6,7,8,9,10,1,

C)0,1,2,3,4,5,6,7,8,9,

D)l,1,1,1,1,1,1,1,1,1,

答案:A

解析:

知识点/选择题/C8指针/指针处理一维数组T

34.[单选题]若有以下说明和语句,请选出哪个是对C数组元素的正确引用

Intc[4][5],(*cp)⑸;

Cp=c;

A)cp+1

B)*(cp+3)

C)*(cp+1)+3

D)*(*cp+2)

答案:D

解析:

知识点/选择题/C8指针/行指针概念T

35.[单选题]若X和y代表整型数,以下表达式中不能正确表示数学关系∣χ-y∣<10的是

A)abs(χ-y)<10

B)χ-y>-10fe½χ-y<10

C)!(χ-y)<-10I!(y-χ)>10

D)(χ-y)*(χ-y)<100

答案:C

解析:

知识点/选择题/C4选择结构程序设计/表达式运算T

36.[单选题]以下程序段char*alp[]={"ABC","DEF","GHI");intj;puts(alp[1]);

的输出结果是OO

A)A

B)B

OD

D)DEF

答案:D

解析:

37.[单选题]设有如下程序

ftinclude<stdio.h>

MainO

(

Int**k,*j,i=100;

J=&i;k=&j;

Printf("%d∖n",**k);

}

上述程序的输出结果是o

A)运行错误

B)100

C)i的地址

D)j的地址

答案:B

解析:

知识点/选择题/C8指针/指向指针的指针

38.[单选题]变量的指针,其含义是指该变量的Oo

A)值

B)地址

C)名

D)一个标志

答案:B

解析:

39.[单选题]下面描述中,正确的是____o

A)结构化程序设计方法是面向过程程序设计的主流

B)算法就是计算方法

C)一个正确的程序就是指程序书写正确

D)计算机语言是编写程序的工具而不是表示算法的工具

答案:A

解析:

40.[单选题]对于基类型相同的两个指针变量之间,不能进行的运算是()。(2分)

AX

B)"=

0+

D)-

答案:C

解析:

41.[单选题]以下合法的浮点型常量是

A)e-3

B)1.5e+2.4

C)3.14e+2L

D)3.14

答案:C

解析:

42.[单选题]已知"inta=4,b=5,c;”,则执行表达式"c=a=a>b"后变量a的值为

A)0

B)l

04

D)5

答案:A

解析:

43.[单选题]若有说明inta[3][4];则a数组元素的非法引用是Oo

A)a[O][2*1]

B)a[l][3]

C)aL4-2][0]

D)a[0][4]

答案:D

解析:

44.[单选题]有以下程序

MainO

{inta[3][3],*p,i;

P=&a[O][01;

For(i=0;i<9;i++)p[i]=i+l;

Printf("%d∖n",aLl][2]);

}

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

A)3

B)6

09

D)2

答案:B

解析:

知识点/选择题/C8指针/指针处理二维数组T

45.[单选题]以下可作为函数fopen中第一个参数的正确格式是O0

A)C、user∖text.txt

B)C、∖user∖text.txt

C)"Cs∖user∖text.txt"

D)"C,WuserWtext.txt"

答案:D

解析:

46.[单选题]有以下程序

MainO

{inta=5,b-4,c=3,d=2;

If(a>b>c)

Printf("%d∖n",d);

Elseif((c-l>=d)==1)

Printf("%d∖n",d+l);

Else

Printf("%d∖n",d+2);

)

执行后输出的结果是_____O

A)2

B)3

04

D)编译时有错,无结果

答案:B

解析:

知识点/选择题/C4选择结构程序设计/IF语句的嵌套T

47.[单选题]若指针P已正确定义,要使P指向两个连续的整型动态存储单元,不正确的语句是

A)p=2*(int*)malIoc(sizeof(int));

B)p=(int*)malIoc(2*sizeof(int))

C)p=(int*)malIoc(2*4)

D)p=(int*)calloc(2,sizeof(int))

答案:A

解析:

知识点/选择题/C9结构体与共用体/动态内存分配T

48.[单选题]Char*sl="hello",*s2;s2=sl;则()。

A)s2指向不确定的内存单元

B)不能访问"hello"

C)puts(si);与PUtS(S2);结果相同

D)Sl不能再指向其它单元

答案:C

解析:

49.[单选题]以下能对一维数组a进行正确初始化的语句是O0

A)inta[10]=(0,0,0,0,0)

B)inta[10]={};

C)inta口={0};

D)inta[10]={10*l);

答案:C

解析:

50.[单选题]以下程序段的输出结果是。。

Char*alp[]={"ΛBC","DEF","GHI"};intj;puts(alp[l]);

A)A

B)B

OD

D)DEF

答案:D

解析:

51.[单选题]下列叙述中正确的是。

A)C语言编译时不检查语法

B)C语言的子程序有过程和函数两种

C)C语言的函数可以嵌套定义

D)C语言中,根据函数能否被其它源文件调用,被区分为内部函数和外部函数

答案:D

解析:

知识点/选择题/C6函数与编译预处理/内部函数与外部函数

52.[单选题]设有定义:inta=2,b=3,c=4;,则以下选项中值为O的表达式是()。

A)(!a==l)fe⅛(!b==O)

B)a

Oa&&b

D)aI(b+b)&&(c-a)

答案:A

解析:

53.[单选题]有以下程序

MainO

{inta=l,b;

For(b=l;b<=10;b++)

{if(a>=8)break;

If(a%2==l){a+=5;continue;}

A-=3;

)

Printf("%d∖n",b);

)

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

A)3

B)4

05

D)6

答案:B

解析:

知识点/选择题/C5循环结构程序设计/break与ContinUeT

54.[单选题]设intb=2;表达式(b>>2)∕(b>>l)的值是()。

A)0

B)2

04

D)8

答案:A

解析:

55.[单选题]以下标识符中,不能作为合法的C用户定义标识符的是Oo

A)putchar

B)_double

C)_123

D)INT

答案:A

解析:

56.[单选题]#include<stdio.h>

Main()

{charcl,c2,c3,c4,c5,c6;

Scanf("%c%c%c%c",&cl,&c2,&c3,&c4);

C5=getchar();c6=getchar();

Putchar(cl);putchar(c2);

Printf("%c%c∖n",c5,c6);

}

程序运行后,若从键盘输入(从第1列开始)

123〈回车>

45678〈回车>

则输出结果是______O

A)1267

B)1256

C)1278

D)1245

答案:D

解析:

知识点/选择题/C3顺序结构程序设计/字符数据输入输出T

57.[单选题]设有数组定义:chararray[]="China";则数组array所占的

空间为()。

A)4个字节

B)5个字节

06个字节

D)7个字节

答案:C

解析:

58.[单选题]C语言中不可以嵌套的是O0

A)函数调用

B)函数定义

C)循环语句

D)选择语句

答案:B

解析:

59.[单选题]下面程序的运行结果是()。

≠include<stdio.h>

intmain(void)

(

intx[5]={2,4,6,8,10},*p,**pp;

P=x;

PP=&p;

printf(α%d”,*(p++));

printfC,%d\n),,**pp);

return0;

}

A)44

B)24

C)22

D)46

答案:B

解析:

60.[单选题]以下程序的输出结果是

Main()

{inta=0,i;

For(i=l;i<5;i++)

{switch(i)

(

CaseO:case3:a+=2;

Case1:case2:a+=3;

Default:a+=5;}

)

Printf("%d∖n",a);

)

A)31

B)13

OlO

D)20

答案:A

解析:

61.[单选题]以下叙述中正确的是。

A)预处理命令行必须位于C源程序的起始位置

B)在C语言中,预处理命令行都以"#"开头

C)每个C程序必须在开头包含预处理命令行:#include<stdio.h>

D)C语言的预处理不能实现宏定义和条件编译的功能

答案:B

解析:

知识点/选择题/ClC语言概述/程序设计概述

62.[单选题]以下程序段的输出结果是()ointmain(){intnum=0,s=0;whiIe(num<=

2){num++;s+=num;}printf("%d∖n",s);return0;}

A)10

B)6

C)3

D)l

答案:B

解析:

63.[单选题]C程序的基本结构单位是

A)文件

B)语句

C)函数

D)表达式

答案:C

解析:

64.[单选题]对于一个正常运行的C程序,以下叙述中正确的是0

A)程序的执行总是从main函数开始,在main函数结束

B)程序的执行总是从程序的第一个函数开始,在main函数结束

C)程序的执行总是从main函数开始,在程序的最后一个函数中结束

D)程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束

答案:A

解析:

知识点/选择题/ClC语言概述/程序设计概述

65.[单选题]若要求在迁后对圆括号中表示,不等于0的关系,则能正确表示这一关系的表达式为

A)a<>0

B)!a

C)a=0

D)a

答案:D

解析:

66.[单选题]以下有4组用户标识符,其中合法的一组是o

A)FORB)4dC)f2_G3D)WORD

-subDOIFvoid

CaseSizeabcdefine

A)A)

B)B)

OO

D)D)

答案:C

解析:

知识点/选择题∕C2基本数据类型及表达式/标识符T

67.[单选题]下列条件语句中,功能与其他语句不同的是

A)if(a)printf("%d∖n",x);elseprintf("%d∖n",y);

B)if(a==0)printf("%d∖n",y);elseprintf("%d∖n",x);

C)if(a!=O)printf("%d∖n",x);elseprintf("%d∖n",y);

D)if(a==O)printf("%d∖n",x);elseprintf("%d∖n",y);

答案:D

解析:

知识点/选择题∕C4选择结构程序设计/IF语句T

68.[单选题]以下程序的输出结果是”

Main()

{intx=10,y=10,i;

For(i=0;x>8;y=++i)

Printf("%d%d",x一,y);

}

A)10192

B)9876

OlO990

D)101091

答案:D

解析:

知识点/选择题/C5循环结构程序设计/FOR循环结构T

69.[单选题]若有以F说明和语间,则输出结果是()。

(StrIen(S)为求字符串S的长度的函数)

Chars[12]="abook!";

Printf("%d",strlen(s));

A)12

B)8

C)7

D)ll

答案:C

解析:

70.[单选题]有以下程序:

#include<stdio.h>

Unionpw

{inti;charch[2];

}a;

Main()

{ach[0]=13;

AchLlJ=O;

Printf("%d∖n",a.i);

)

程序的输出结果是(注意:eh[θ]在低字节,ch[l]在高字节)_____O

Λ)13

B)14

0208

D)209

答案:A

解析:

知识点/选择题/C9结构体与共用体/共用体T

71.[单选题]在执行以下程序时,如果从键盘上输入:ABCdef,则输出结果为

#include"stdio.h"

main(){

charch;

while((ch=getchar())!='∖n')

(

if(ch>=,A'&&ch<='Z')

ch=ch+32;

elseif(ch>='a'&&ch<="z')

ch=ch-32;printf("%c",ch);

)

printf("∖n");

)

A)ABCdef

B)abcDEF

C)abc

D)DEF

答案:B

解析:

72.[单选题]有以下程序

Main()

{inta=l,b=3,c=5;

Int*pl=⅛a,*p2=&b,*p=&c;

*p=*pl*(*p2);

Printf("%d∖n",c);

)

执行后的输出结果是_____O

A)l

B)2

03

D)4

答案:C

解析:

知识点/选择题/C8指针/指针与变量T

73.[单选题]以下不正确的描述是

A)break语句只能用于循环语句和SWitch语句

B)在SWitCh语句中,break语句的作用也可用ContinUe语句来代替

C)循环语句中,使用COntinUe语句是为了结束本次循环,而不是终止整个循环的执行

D)循环语句中,使用break语句是为了使流程跳出循环体,提前结束循环

答案:B

解析:

74.[单选题]若输入ab,程序运行结果为。。

Main()

{staticchara[2];

scanf("%s",a);

printf("%c,%c"<a[l],a[2]);

}

A)a,b

B)a,

Ob,

D)程序出错

答案:C

解析:

75.[单选题]有如下定义

Structperson{charname[9];intage;};

Structpersonclass[10]={"John",17,

"Paul",19,

"Mary",18,

"Adam",16,};

根据上述定义,能输出字母J的语句是O

A)printf("%c∖n",class[1].name);

B)printf("%c∖n",class[1].name[1]);

C)printf("%c∖n",class[θ].name[l]);

D)printf("%c∖n",class[0].name[0]);

答案:D

解析:

知识点/选择题∕C9结构体与共用体/S结构体数组T

76.[单选题]在执行以下程序时,如果从键盘上输人:ΛBCdef,则输出结果为#include”StdiO.h"

Main()

{charch;

While((ch=getchar())!='∖n')

{if(ch>=,A?&&ch<=,Z)ch=ch+32;

Elseif(ch>=*a,&&ch<='z')Ch=Ch-32;

Printf(,,%c∖ch);

)

Printf(,,∖n,f);

)

A)ABCdef

B)abeDEF

C)abc

D)DEF

答案:B

解析:

77.[单选题]设变量已正确定义,以下()与其它SWitCh语句不等价。

ʌ)switch(op){

case'+':

printf(n%d∖nμ,valuel+value2);break;

case,:printf(,,%d∖nπ,valuel-value2);break;

case'*':printf(n%d∖nπ,valuel*value2);break;

default:printf(MError\nH);break;

B)switch(op){

default:printf(HError\nH);break;

case'*':printf(,,%d∖nπ,valuel*value2);break;

caseprintf(κ%d∖nπ,valuel-value2);break;

case'+':printf(,,%d∖nπ,valuel+value2);break;

C)if(op!=1+,&&op!='-'&&op!='*'){printf(πError∖n,f);)

else{

switch(op){

case'+':printf(n%d∖nπ,valuel+value2);break;

case':printf(,,%d∖n,1,valuel-value2);break;

case'*':printf(n%d∖nπ,valuel*value2);break;

)

D)switch(op){

case'+':printf(,,%d∖nπ,valuel+value2);break;

caseprintf(n%d∖n∖valuel-value2);break;

case'*':printf(,,%d∖nπ,valuel*value2);break;

答案:D

解析:

78.[单选题]有以下说明语句,则结构变量S的成员num的不正确引用是。structstudent{int

num;intage;}s,*p

A)s.num

B)*p.num

C)p->num

D)(*p).num

答案:B

解析:

79.[单选题]有如下定义,Chars[80],*p=s;不能给数组S输入字符串的是()。(2分)

A)1.gets(p)

B)1.gets(s[0]);

C)1.gets(&s[0]));

D)1.gets(s);

答案:B

解析:

80.[单选题]根据下面的定义,structworker{charnameL18];intage;);structworker

w[100>{"John",16,"Paul",17,"Mary",17};能输出字符串‘Maχ∙y'的语句是()。(2分)

A)1.printf("%s",w[2].name);

B)1.printf("%s",w[l].name);

C)1.printf("%s",w[2]);

D)1.printf("%s",w[l]);

答案:A

解析:

81.[单选题]以下叙述不正确的是()。

A)main函数必须位于程序的最前面

B)C程序中,每行可以写多条语句

C)C语言本身不提供输入输出语句。

D)在对C语言程序进行编译的过程中,不能发现注释中的错误

答案:A

解析:

82.[单选题]下列关于单目运算符++、一的叙述中正确的是o

A)它们的运算对象可以是任何变量和常量

B)它们的运算对象可以是Char型变量和int型变量,但不能是float型变量

C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量

D)它们的运算对象可以是Char型变量、int型变量和float型变量

答案:D

解析:

知识点/选择题/C2基本数据类型及表达式/运算符使用规则

83.[单选题]若执行下面程序时从键盘上输入5,

MainO

(

Intx;

Scanf("%d",&x);

If(x++>5)printf("%d∖n",x);

Elseprintf("%d∖n",x-);

)

则输出是_____O

A)7

B)6

C)5

D)4

答案:B

解析:

知识点/选择题/C4选择结构程序设计/IF语句T

84.[单选题]设有定义:intn=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是。。

A)p=l;

B)*q=2;

C)q=p;

D)*p=5;

答案:D

解析:

85.[单选题]以下语句或语句组中,能正确进行字符串赋值的是o

A)char*sp;*sp="right!";

B)chars[10];s="right!";

C)chars[10];*s="right!";

D)char*sp="right!";

答案:D

解析:

知识点/选择题∕C8指针/指针变量定义与初始化T

86.[单选题]关于文件指针,以下说法错误的是()。(2分)

A)l.只有通过文件指针变量才能调用相应文件。

B)l.定义文件指针变量时,FlLE必须大写。

01.一个文件指针变量只能对应一个文件。

D)l.一个文件指针变量可以同时对应多个文件。

答案:D

解析:

87.[单选题]有以下程序段

Intn,t=l,s=0;

Scanf("%d",&n);

Do{s=s+t;t=t^2;}while(t!=n);

为使此程序段不陷入死循环,从键盘输入的数据应该是_____O

A)任意正奇数

B)任意负偶数

C)任意正偶数

D)任意负奇数

答案:D

解析:

知识点/选择题/C5循环结构程序设计/DO-WHILE循环T

88.[单选题]下面的这个循环的循环次数是()。inti,j:for(i=0,j=10;i=j=10;i++,j—)

A)语法错误,不能执行

B)无限次

OlO

D)l

答案:B

解析:

89.[单选题]C语言中,double类型数据占O0

A)I个字节

B)2个字节

04个字节

D)8个字节

答案:D

解析:

90.[单选题]有以下程序

MainO

{inti=l,j=2,k=3;

If(i++==l&&(++j==3]k++==3))

Printf("%d%d%d∖n",i,j,k);

}

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

A)l23

B)234

C)223

D)233

答案:D

解析:

知识点/选择题/C4选择结构程序设计/逻辑运算短路问题T

91.[单选题]若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是Oo

A)函数调用可以作为独立的语句存在

B)函数调用可以作为一个函数的实参

C)函数调用可以出现在表达式中

D)函数调用可以作为一个函数的形参

答案:D

解析:

92.[单选题]以下不能定义为用户标识符的是一

A)scanf

B)Void

C)_3com_

D)int

答案:D

解析:

知识点/选择题/C2基本数据类型及表达式/标识符T

93.[单选题]Putchar函数可以向终端输出一个()。

A)整型变量表达式值

B)实型变量值

C)字符串

D)字符或字符型变量值

答案:D

解析:

94.[单选题]有以下程序

Main()

{intk=5,n=0;

While(k>0)

{switch(k)

(

Default:break;

Case1:n+=k;

Case2:

Case3:n+=k;

K-;

)

Printf(',%d∖n",n);

)

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

A)0

B)4

06

D)7

答案:D

解析:

知识点/选择题/C5循环结构程序设计/循环嵌入SWitCh语句T

95.[单选题]C语言中要求对变量作强制定义的主要理由是Oo

A)便于移植

B)便于写文件

C)便于编辑预处理程序的处理

D)便于确定类型和分配空间

答案:D

解析:

96.[单选题]以下程序运行后的输出结果是

Main()

Inta=0,b=0,c=0,d=0;

If(a=l)b=l;c=2;

Elsed=3;

Printf("%d,%d,%d,%cl∕n",

A,

B,

C,d);

A)0,1,2,0

B)0,0,O,3

01,1,2,O

D)编译有错

答案:D

解析:

97.[单选题]执行下列语句后变量X和y的值是()。

Y=IO;x=y++;

A)x=10,y=10

B)X=Il,y=ll

C)x=10,y=ll

D)x=ll,y=10

答案:C

解析:

98.[单选题]C语言规定,函数返回值的类型是由OO

A)return语句中的表达式类型所决定

B)调用该函数时的主调函数类型所决定

C)调用该函数时系统临时决定

D)在定义该函数时所指定的函数类型所决定

答案:D

解析:

99.[单选题]若有说明语句:charc='∖72';则变量C()0

A)包含1个字符

B)包含2个字符

C)包含3个字符

D)说明不合法,C的值不确定

答案:A

解析:

100.[单选题]Fwrite函数的一般调用形式是O0

A)fwrite(buffer,count,size,fp);

B)fwrite(fp,size,count,buffer);

C)fwrite(fp,count,size,buffer);

D)fwrite(buffer,size,count,fp);

答案:D

解析:

IOL[单选题]设a、b和C都是int型变量,且a=3,b=0,c=5,则以下值为0的表达式是

A)'a'&&'b'

B)a&&bIIc

C)a&&b&&c

D)aIIb&&c

答案:C

解析:

102.[单选题]如果要一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,则

这个变量的存储类型应该被说明为()。

A)自动变量

B)静态变量

C)外部变量

D)寄存器变量

答案:B

解析:

103.[单选题]以下叙述不正确的是Oo

A)一个C源程序可由一个或多个函数组成

B)一个C源程序必须包含一个main函数

C)C程序的基本组成单位是函数

D)在C程序中,注释说明只能位于一条语句的后面

答案:D

解析:

104.[单选题]程序中要求计算机操作的对象是什么?

A)算法

B)变量

C)数据

D)标识符

答案:C

解析:

105.[单选题]设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b∕b的值是()。

A)6.500000

B)6

05.500000

D)6.000000

答案:D

解析:

106.[单选题]结构化程序设计所规定的三种基本控制结构是。

A)输入、处理、输出

B)树形、网形、环形

C)顺序、选择、循环

D)主程序、子程序、函数

答案:C

解析:

知识点/选择题/C3顺序结构程序设计/C语句分类T

107.[单选题]Inta=l,b=2,c=3;

If(a>c)b=a;a=c;c=b;则C的值为()。

A)l

B)2

03

D)不一定

答案:B

解析:

108.[单选题]有如下程序段

Int*p,a=5,b=l;

P=&a;a=*p+b;

执行该程序段后,a的值为o

A)5

B)6

07

D)编译出错

答案:B

解析:

知识点/选择题/C8指针/S指针与变量T

109.[单选题]已知intX=IO,y=20,z=32;以下语句:if(x<y)z=x;x=y;y=z;执行后x,y,z的值

是()。(2分)

A)1.x=10,y=10,z=10

B)l.x=20,y=30,z=30

C)1.x=20,y=30,Z=IO

D)l.x=20,y=20,z=20

答案:A

解析:

110.[单选题]有以下程序

Voidf(int*a,inti,intj)

{intt;

If(i<j)

{t=a[i];a[i]=a[j];a[j]=t;

F(a,i+1,j-1);

)

)

Main()

{inti,aa[5]={l,2,3,4,5);

F(aa,0,4);

For(i=0;i<5;i++)printf("%d,",aa[i]);printf("∖n");

}

执行后输出结果是。

A)5,4,3,2,l,

B)5,2,3,4,l,

01,2,3,4,5,

D)l,5,4,3,2,

答案:A

解析:

知识点/选择题/C8指针/[

IlL[单选题]为了提高程序的运行速度,在函数中对于整型或指针可以使用O型的变量。

A)auto

B)register

C)static

D)extern

答案:B

解析:

112.[单选题]执行以下程序段后,输出结果和a的值是Oo

Inta=10;

Printf("%d",a++);

A)10和10

B)10和11

Oll和10

D)ll和11

答案:B

解析:

113.[单选题]若定义:inta=511,*b=&a;,则Printf("%d∖n",*b);的输出结果为。

A)无确定值

B)a的地址

0512

D)511

答案:D

解析:

知识点/选择题/C8指针/指针与变量T

114.[单选题]已知i、j、k为int型变量,若从键盘输入:i=l,j=2,k=3/,使i的值为1、j的值为2、k的

值为3,以下选项中正确的输入语句是o

A)scanf("%2d%2d%2d&k);

B)scanf("%d%d‰Γ,&i,&j,&k);

C)scanf("%d,%d,%d",&i,&j,&k);

D)scanf("i=%d,j=%d,k=%d",&i,&j,&k);

答案:D

解析:

知识点/选择题∕C3顺序结构程序设计/S输入函数T

115.[单选题]以下程序的输出结果是o

Unionmyun

{struct

{intx,y,z;}u;

Intk;

}a;

Main()

{au.x=4;a.u.y=5;a.u.z=6;

Ak=0;

Printf("%d∖n",a.u.x);

)

A)4

B)5

C)6

D)0

答案:D

解析:

知识点/选择题∕C9结构体与共用体/共用体T

116.[单选题]以下程序执行后SUm的值是______o

MainO

{inti,sum;

For(i=l;i<6;i++)sum+=i;

Printf("%d∖n",sum);

)

A)15

B)14

C)不确定

D)0

答案:C

解析:

知识点/选择题/C5循环结构程序设计/FOR循环结构T

117.[单选题]以下运算符中,优先级最高的运算符是Oo

A)=

B)!=

C)*(乘号)

D)0

答案:D

解析:

118.[单选题]以下程序运行时,输入的X值在()范围时才会有输出结果。

"include<stdio.h>

inttnain()

int×)

scβ∩f(∙"%d*3×);

if(x<∙3);

elseif(x!=10)

pri∩tf(∙%d∖n",×);

returnθ;

}

>

A)不等于10的整数

B)大于3且不等于10的整数

C)大于3且等于10的整数

D)小于3的整数

答案:B

解析:

119.[单选题]有以下程序

Voidfun(char*a,char*b)

{a=b;(*a)++;}

Main()

{charcl='A',c2='a',*pl,*p2;

Pl=&cl;p2=&c2;fun(pl,p2);

Printf("%c%c∖n",cl,c2);

)

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

A)Λb

B)aa

OAa

D)Bb

答案:A

解析:

知识点/选择题/C8指针/字符指针作函数参数T

120.[单选题]以下程序的输出结果是o

Main()

{chart[]="student",*p;

P=t+1;

Printf("%c",*p++);

Printf("%c",*p++);

A)tu

B)st

C)ud

D)en

答案:A

解析:

知识点/选择题∕C8指针/S指针与字符数组T

121.[单选题]表达式0xll&0xl3的值是()o(2分)

A)l.0x12

B)l.Oxll

C)0xl2

D)0x22

答案:B

解析:

122.[单选题]有以下程序

Main()

{chara[]={'a','b','c','d','e','f','g','h','∖0');inti,

I=sizeof(a);j=strlen(a);

Printf("%d,%d∖n",i,j);

)

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

A)9,9

B)8,9

01.8

D)9,8

答案:D

解析:

知识点/选择题/C7数组/字符数组内存分配及串长度T

123.[单选题]以下叙述错误的是()。(2分)

A)l.指针可以进行加、减等算术运算;

B)l.指针中存放的是地址值

01.指针是一个变量

D)l.指针变量不占用存储空间

答案:D

解析:

124.[单选题]有以下程序

Voidf(int*q)

{inti=0;

For(;i<5;i++)(*q)++;

)

Main()

{inta[5]={l,2,3,4,5},i;

F(a);

For(i=0;i<5;i++)printf("%d,",aLi]);

}

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

A)2,2,3,4,5,

B)6,2,3,4,5,

01,2,3,4,5,

D)2,3,4,5,6,

答案:B

解析:

知识点/选择题/C8指针/指针作函数参数T

125.[单选题]在嵌套使用if语句时,C语言规定else总是

A)和之前与其具有相同缩进位置的if配对

B)和之前与其最近的if配对

C)和之前与其最近不带elee的if配对

D)和之前的第一个if配对

答案:C

解析:

126.[单选题]C语言中,文件由()。

A)记录组成

B)由数据行组成

C)由数据块组成

D)由字符(字节)序列组成

答案:D

解析:

127.[单选题]下列程序段的输出结果为OO

Floatx=213.82631;

Printf(',%3d",(int)x);

Λ)213.82

B)213.83

C)213

D)3.8

答案:C

解析:

128.[单选题]以下对局部变量描述错误的是()。(2分)

A)l.在函数内部定义的变量。

B)l.在程序的全部执行过程中一直占用存储单元。

C)1.在main函数中定义的变量是局部变量。

D)l.形式参数也是局部变量。

答案:B

解析:

129.[单选题]有以下程序

^include<string.h>

StructSTU

{charname[10];

Intnum;

);

Voidf(char*name,intnum)

{structSTUs[2]={{"SunDan",20044},{"Penghua",20045});

Num=s[0].num;

Strcpy(name,s[0].name);

}

Main()

{structSTUs[2]={{"YangSan",20041),{"LiSiGao",20042}},*p;

P=⅛s[l];f(p->name,p->num);

Printf("%s%d∖n",p->name,p->num);

)

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

A)SunDan20042

B)SunDan20044

OLiSiGuo20042

D)YangSan20041

答案:A

解析:

知识点/选择题/C9结构体与共用体/【

130.[单选题]循环for(i=0,j=5;++i!=—j;)Printf("%d%d”,i,j);将执行

A)6

B)3

OO

D)无限次

答案:D

解析:

131.[单选题]有以下程序(提示:程序中fseek(fp,-2*sizeof(int),SEEK_END);语句的作用是使位置

指针从文件末尾向前移2*sizeof(int)字节):

Winclude<stdio.h>

Main()

{FILE*fp;inti,a[4]={l,2,3,4},b;

Fp=fopen("data,dat","wb");

For(i=0;i<4;i++)fwrite(&a[i],sizeof(int),l,fp);

Fclose(fp);

Fp=fopen("data.dat","rb");

Fseek(fp,-2*sizeof(int),SEEKEND);

Fread(&b,sizeof(int),1,fp);∕*从文件中读取SiZeof(int)字节的数据到变量b中*/

Fclose(fp);

Printf('l%d∖n",b);

)

执行后输出的结果O

A)2

B)l

04

D)3

答案:D

解析:

知识点/选择题/Cll文件/【

132.[单选题]以下程序的功能是进行位运算

MainO

{unsignedchar

A,b;

A=7^3;b=~4&3;

Printf("%d%d∖n",a,b);

)

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

A)43

B)73

070

D)4O

答案:A

解析:

知识点/选择题/ClO位运算/位运算T

133.[单选题]设变量已正确定义,则以下能正确计算f=n!的程序段是____。

ʌ)f=0;for(i=l;i<=n;i++)f*=i;

B)f=l;for(i=l;i<∏;i++)f*=i;

C)f=l;for(i=n;i>l;i++)f*=i;

D)f=l;for(i=n;i>=2;i-)f*=i;

答案:D

解析:

知识点/选择题∕C5循环结构程序设计/FOR循环结构T

134.[单选题]有以下程序

Sinclude<stdio.h>

Inta=l;

Intf(intc)

{staticinta=2;

C=c+1;

Return(a++)+c;

}

Main()

{inti,k=0;

For(i=0;i<2;i++){inta=3;k+=f(a);}

K+=a;

Printf("%d∖n",k);

}

程序的运行结果是O

A)14

B)15

C)16

D)17

答案:A

解析:

知识点/选择题/C6函数与编译预处理/静态存储T

135.[单选题]若想对文本文件进行只读操作,打开此文件的方式是()。(2分)

A)l."rb"

B)l."w"

01."ab"

D)l."r"

答案:D

解析:

136.[单选题]假设SCanf语句执行时输入ABCDE〈回车>,能使PUtS(S)语句正确输出ABCDE字符串的程

序段是

A)chars[5]={"ABCDE"};puts(s);

B)chars[5]={'A','B',"C','D','E');puts(s);

C)char*s;scanf("%s",s);puts(s);

D)char*s;s="ABODE";puts(s);

答案:D

解析:

137.[单选题]下面程序的输出结果是。

Main()

{intb口={l,2,3,4,5,6,7,8,9,0},*q;

Q=b;

Printf("%d∖n",*(q+0));}

A)0

B)l

OlO

D)9

答案:B

解析:

知识点/选择题/C8指针/S指针处理一维数组T

138.[单选题]下列叙述中正确的是

A)break语句只能用于SWitCh语句

B)在SWitCh语句中必须使用default

C)break语句必须与SWitCh语句中的CaSe配对使用

D)在SWitCh语句中不一定使用break语句

答案:D

解析:

139.[单选题]以下程序的执行结果是一

Main()

(

Int

A,y;

A=10;y=0;

Do{a+=2;y+=a;

Printf("a=%dy=%d∖n",

A.y);

If(y>20)break;

}while(a=14);

A)a=12y=12

B)a=12y=12

A=14y=16a=16y=28

A=16y=20

A=18y=24

C)a=12y=12

D)a=12y=12

A=14y=26a=14y=44

答案:B

解析:

140.[单选题]若有以下的定义:intt[3][2];能正确表示t数组元素地址的表达式是O0

A)⅛t[3][2]

B)t[3]

C)⅛t[l]

D)t[2]

答案:D

解析:

141.[单选题]计算机能直接执行的程序是____o

A)源程序

B)目标程序

C)汇编程序

D)可执行程序

答案:D

解析:

知识点/选择题/ClC语言概述/程序设计概述

142.[单选题]若有以下说明:

Inta[10]={l,2,3,4,5,6,7,8,9,10},*p=a;

则值为6的表达式是。

A)*p+6

B)*(p+6)

C)*p+=5

D)p+5

答案:C

解析:

知识点/选择题/C8指针/一维数组元素的指针表示T

143.[单选题]设有定义:intn1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=nl;语句等价的是

A)*p=*q;

B)p=q;

C)*p=&nl;

D)p=*q;

答案:A

解析:

知识点/选择题/C8指针/指针与变量T

144.[单选题]设X,y为int型变量,则执行下列语句后,y的值是x=5;y=x++*x++;y=-y*-y;

A)529

B)2401

C)1209

D)625

答案:A

解析:

145.[单选题]以下所列的C语言整形常量中,正确的是

A)OxlOg

B)0976

C)076L

D)01ff

答案:C

解析:

146.[单选题]有以下程序:

^include<stdio.h>

MainO

{FILE*fp;

Inti,k-0,n=0;

Fp=fopen("dl.dat","w");

For(i=l;i<4;i++)fprintf(fp,"%d",i);

Fclose(fp);

Fp=fopen("dl.dat","r");

Fscanf(fp,"%d%d",fek,⅛n);printf("%d%d∖n",k.∏);

Fclose(fp);

)

执行后输出结果是_____O

A)l2

B)1230

Ol23

D)00

答案:B

解析:

知识点/选择题/Cll文件/格式化读写函数T

147.[单选题]若定义Pf为指向float类型变量f的指针,下列语句中—是正确的。

A)floatf,*pf=f;

B)floatf,*pf=&f;

C)float*pf=&f,f;

D)floatf,*pf=0.0;

答案:B

解析:

148.[单选题]以下定义语句中,错误的是。

A)inta[]

温馨提示

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

评论

0/150

提交评论