大一C语言期末考试选择复习题.docx

上传人:b****8 文档编号:12696402 上传时间:2023-06-07 格式:DOCX 页数:29 大小:23.50KB
下载 相关 举报
大一C语言期末考试选择复习题.docx_第1页
第1页 / 共29页
大一C语言期末考试选择复习题.docx_第2页
第2页 / 共29页
大一C语言期末考试选择复习题.docx_第3页
第3页 / 共29页
大一C语言期末考试选择复习题.docx_第4页
第4页 / 共29页
大一C语言期末考试选择复习题.docx_第5页
第5页 / 共29页
大一C语言期末考试选择复习题.docx_第6页
第6页 / 共29页
大一C语言期末考试选择复习题.docx_第7页
第7页 / 共29页
大一C语言期末考试选择复习题.docx_第8页
第8页 / 共29页
大一C语言期末考试选择复习题.docx_第9页
第9页 / 共29页
大一C语言期末考试选择复习题.docx_第10页
第10页 / 共29页
大一C语言期末考试选择复习题.docx_第11页
第11页 / 共29页
大一C语言期末考试选择复习题.docx_第12页
第12页 / 共29页
大一C语言期末考试选择复习题.docx_第13页
第13页 / 共29页
大一C语言期末考试选择复习题.docx_第14页
第14页 / 共29页
大一C语言期末考试选择复习题.docx_第15页
第15页 / 共29页
大一C语言期末考试选择复习题.docx_第16页
第16页 / 共29页
大一C语言期末考试选择复习题.docx_第17页
第17页 / 共29页
大一C语言期末考试选择复习题.docx_第18页
第18页 / 共29页
大一C语言期末考试选择复习题.docx_第19页
第19页 / 共29页
大一C语言期末考试选择复习题.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

大一C语言期末考试选择复习题.docx

《大一C语言期末考试选择复习题.docx》由会员分享,可在线阅读,更多相关《大一C语言期末考试选择复习题.docx(29页珍藏版)》请在冰点文库上搜索。

大一C语言期末考试选择复习题.docx

大一C语言期末考试选择复习题

###

~~~1

下列叙述中正确的是()。

程序设计就是编制程序

程序的测试必须由程序员自己去完成

程序经调试改错后还应进行再测试

程序经调试改错后不必进行再测试

~C

~~~1

以下叙述中正确的是()。

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

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

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

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

~B

~~~1

下面关于算法的正确描述是()。

算法就是计算的方法

算法就是解决问题的步骤

一个问题的算法是唯一的

一个问题的算法只能用一种语言设计

~B

~~~1

对计算机进行程序控制的最小单位是()。

语句

字节

指令

程序

~C

~~~1

编制一个好的程序首先要确保它的正确性和可靠性,除此以外,通常更注重源程序的()。

易使用性、易维护性和效率

易使用性、易维护性和易移植性

易理解性、易测试性和易修改性

易理解性、安全性和效率

~B

~~~1

与高级语言相比,用低级语言(如机器语言等)开发的程序,其结果是()。

运行效率低,开发效率低

运行效率低,开发效率高

运行效率高,开发效率低

运行效率高,开发效率高

~C

~~~1

程序设计语言的语言处理程序是一种()。

系统软件

应用软件

办公软件

工具软件

~A

~~~1

()是常见的两类程序设计语言处理程序。

高级语言程序和低级语言程序

解释程序和编译程序

编译程序和操作系统

系统程序和应用程序

~B

~~~1

计算机只能直接运行()。

高级语言源程序

汇编语言源程序

机器语言程序

任何源程序

~C

~~~1

将高级语言的源程序转换成可在机器上独立运行的程序的过程称为()。

解释

编译

连接

汇编

~B

~~~1

著名计算机科学家NikiklausWirth提出一个公式:

程序=______。

数据+运算符

数据结构+算法

结构+函数

运算符+运算数

~B

~~~1

解释程序和编译程序的主要区别之一在于______。

单用户与多用户的差别

对用户程序的查错能力

机器执行的效率

是否生成目标程序

~D

~~~1

以下叙述正确的是______。

C语言比其他语言高级

C语言可以不用编译就能被计算机识别执行

C语言以接近英语国家的自然语言和数学语言作为语言的表达形式

C语言出现的最晚、具有其他语言的一切优点

~C

~~~2

C语言中最简单的数据类型包括()。

整型、实型、逻辑型

整型、实型、字符型

整型、字符型、逻辑型

整型、实型、逻辑型、字符型

~B

~~~2

请选出可用作C语言用户标识符的一组标识符()。

void,define,WORD

a3_b3,_123,IF

FOR,——abc,Case

2a,Do,Sizeof

~B

~~~2

C语言中合法的字符常量是()

'\084'

'\x43'

'ab'

"\0"

~B

~~~2

下列运算符中,哪一个优先级最低?

?

=

>=

==

~B

~~~2

以下能正确定义且赋初值的语句是()。

intn1=n2=10;

charc=32;

floatf=f+1.1;

doublex=12.3e2.5;

~B

~~~2

设有定义:

intk=1,m=2;floatf=7;则以下选项中错误的表达式是()。

k=k>=k

-k++

k%f

k>=f>=m

~C

~~~2

设有定义:

inta=2,b=3,c=4;则以下选项中值为0的表达式是()。

(!

a==1)&&(!

b==0)

!

a||b||c

a&&b

a||(b+b)&&(c=a)

~A

~~~2

Charp[]={'a','b','c'},q[]="abc";printf("%d%d%d\n",sizeof(p),sizeof(q),strlen(q));以上程序段的输出结果是()。

344

333

343

434

~C

~~~2

根据程序段判断:

chara1='M',a2='m';printf("%c\n",(a1,a2));以下叙述中正确的是()。

程序输出大写字母M

程序输出小写字母m

格式说明符不足,编译出错

程序运行时产生出错信息

~B

~~~2

设有如下定义:

inta=1,b=2,c=3,d=4,m=2,n=2;则执行表达式:

(m=a>b)&&(n=c>d)后,n的值为()。

1

2

3

0

~B

~~~2

有以下程序段charc1='1',c2='2';c1=getchar();c2=getchar();putchar(c1);putchar(c2);当运行时输入:

a<回车>后,以下叙述中正确的是()。

变量c1将被赋字符a,c2被赋回车符

程序将等待用户输入第二个字符

变量c1被赋字符a,c2中仍是原有字符2

变量c1被赋字符a,c2中将无确定值

~A

~~~2

表达式:

10!

=9的值是()。

true

非零值

0

1

~D

~~~2

在c语言中,运算对象必须是整型数的运算符是()。

%

\

%和\

**

~A

~~~2

以下语句的输出结果是_____。

printf("%d\n",NULL);

不确定的(因变量无定义)

0

-1

1

~B

~~~2

能正确表示a和b同时为正或同时为负的逻辑表达式是________。

(a>=0||b>=0)&&(a<0||b<0)

(a>=0&&b>=0)&&(a<0&&b<0)

(a+b>0)&&(a+b<=0)

a*b>0

~D

~~~2

表示关系x>y≥z,则正确的c语言表达式为________。

x>y>=z

(x>y)&(y>=z)

(y=z)

(x>y)and(y>=z)

~C

~~~2

有语句scanf("%d,%d",&a,&b);要使变量a、b分别得23、45,则正确的输入形式为_______。

2345

23,45

23;45

2345

~B

~~~2

以下能定义为用户标识符的是____。

34

e#

int

name

~D

~~~2

下列程序段的运行结果是______。

inta=2,c=5;printf("a=%d,b=%d\n",a,c);

a=%2,b=%5

a=2,b=5

a=d,b=d

a=%d,b=%d

~B

~~~2

英文小写字母c的ASCII码为99,英文大写字母C的ASCII码为______。

50

66

52

67

~D

~~~2

下列叙述中错误的是()。

用户所定义的标识符允许作到使用关键字

用户所定义的标识符应尽量作到“见名知意”

用户所定义的标识符必须以字母或下划线开头

用户所定义的标识符中,大小写字母代表不同标识

~A

~~~2

若inta=3,则执行完表达式a+=a-=a*a后,a的值是()。

-3

9

-12

6

~C

~~~2

设x、y、z和k都是int型变量,则执行表达式:

x=(y=4,z=16,k=32)后,x的值为()。

4

16

32

52

~C

~~~2

设有如下的变量定义:

inti=8,k,a,b;unsignedlongw=5;doublex=1.42,y=5.2;则以下符合C语言语法的表达式是()。

a+=a-=(b=4)*(a=3)

x%(-3);

a=a*3=2

y=float(i)

~A

~~~2

假定有以下变量定义:

intk=7,x=12;则能使值为3的表达式是()。

x%=(k%=5)

x%=(k-k%5)

x%=k-k%5

(x%=k)-(k%=5)

~D

~~~2

以下叙述中正确的是()。

输入项可以是一个实型常量,如:

scanf("%f",3.5);

只有格式控制,没有输入项,也能正确输入数据到内存,例如:

scanf("a=%d,b=%d");

当输入一全实型数据时,格式控制部分可以规定小数点后的位数,例如:

scanf("%4,2f",&.f);

当输入数据时,必须指明变量地址,例如:

scanf("%f",&f);

~D

~~~2

设x和y均为int型变量,则以下语句:

x+=y;y=x-y;x-=y;的功能是()。

把x和y按从大到小排列

把x和y按从小到大排列

无确定结果

交换x和y中的值

~D

~~~2

以下程序段的输出结果是:

()。

inta=12,b=12;printf("%d%d\n",--a,++b);

1010

1212

1110

1113

~D

~~~2

编制好的程序时,应强调良好的编程风格,如,选择标识符的名字时应考虑()。

名字长度越短越好,以减少源程序的输入量

多个变量共用一个名字,以减少变量名的数目

选择含义明确的名字,以正确提示所代表的实体

尽量用关键字作名字,以使名字标准化

~C

~~~3

一个C程序的执行是从()。

本程序的main函数开始,到main函数的结束

本程序文件的第一个函数开始,到本程序文件的最后一个函数的结束

本程序文件的main开始,到本程序文件的最后一个函数的结束

本程序文件的第一个函数开始,到本程序文件的main函数的结束

~A

~~~3

以下叙述正确的是()。

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

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

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

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

~C

~~~3

C语言规定,在一个源程序中,main函数的位置()。

必须在最开始

必须在系统调用的库函数的后面

可以任意

必须在最后

~C

~~~3

结构化程序设计所规定的三种基本结构是()。

主程序、子程序、函数

树形、网形、环形

顺序、选择、循环

输入、处理、输出

~C

~~~4

以下叙述中错误的是()。

C语句必须以分号结束

复合语句在语法上被看作一条语句

空语句出现在任何位置都不会影响程序运行

赋值表达式末尾加分号就构成赋值语句

~C

~~~4

当把以下四个表达式用做if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是()。

K%2

K%2==1

(K%2)!

=0

!

K%2==1

~D

~~~4

下面有关for循环的正确描述是()。

for循环只能用于循环次数已经确定的情况。

for循环是先执行循环体语句,后进行循环条件判断。

在for语句中,不能用break语句跳出循环体。

for循环体语句中,可以包含多条语句,但要用花括号括起来。

~D

~~~4

设变量已正确定义,则以下能正确计算f=n!

的程序段是()。

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

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

f=1;for(i=n;i>1;i++)f*=i;

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

~D

~~~4

C语言中下列叙述正确的是()。

不能使用do-while语句构成的循环

do-while语句构成的循环,必须用break语句才能退出

do-while语句构成的循环,当while语句中的表达式值为非零时结束循环

do-while语句构成的循环,当while语句中的表达式值为零时结束循环

~D

~~~4

以下程序段输出结果是:

()。

intm=5;if(m++>5)printf("%d\n",m);elseprintf("%d\n",m--);

7

6

5

4

~C

~~~4

当执行以下程序段时:

()。

x=-1;do{x=x*x;}while(!

x);

循环体将执行两次

循环体将执行一次

循环体将执行无限次

系统将提示有语法错误

~B

~~~4

执行以下程序段后,输出的结果是()。

inty=10;do{y--;}while(--y);print("%d\n",y--);

-1

1

8

0

~D

~~~4

为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。

缩排位置相同的if

与其之前未配对的if

与其之前未配对的最近的if

同一行上的if

~C

~~~4

有以下程序inti,s=0;for(i=1;i<10;i+=2)s+=i+1;printf("%d\n",s);执行后的输出结果是()。

自然数1~9的累加和

自然数1~10的累加和

自然数1~9中的奇数之和

自然数1~10中的偶数之和

~D

~~~5

以下关于函数的叙述中正确的是()。

每个函数都可以被其他函数调用(包括main函数)

每个函数都可以被单独编译

每个函数都可以单独运行

在一个函数内部可以定义另一个函数

~B

~~~5

设函数FUN的定义形式为:

voidfun(charch,floatx){……………}以下对函数的调用语句中,正确的是()。

fun("abc",3.0);

t=fun("abc",16.5);

fun('65',2.8);

fun(32,32);

~D

~~~5

在C程序中,若对函数类型未加说明,则函数的隐含类型为()。

int

double

void

char

~A

~~~5

简单变量做实参时,它相对应形参之间的数据传递方式是()。

地址传递

单向值传递

由实参传给形参,再由形参传回给实参

由用户指定传递方式

~B

~~~5

建立函数的目的选项是()。

提高程序的执行效率

提高程序的可读性

减少程序的篇幅

减少程序文件所占内存

~B

~~~5

下面关于递归的说法错误的是()。

每次当一个递归函数被调用时,程序首先应该检查其些基本的条件是否满足了,例如某个参数的值等于零,函数应停止递归;

每次当函数被递归调用时,传递给函数一个或多个参数,应该以某种方式变得"更简单";

一般情况下,递归方法比迭代方法快;

递归函数的目的是执行一系列调用,一直到达某一点,序列终止。

~C

~~~5

下面说法正确的是()。

函数定义可以嵌套,但函数调用不能嵌套

函数定义不可以嵌套,但函数调用可以嵌套

函数定义和调用均不能嵌套

函数定义和调用均可以嵌套

~B

~~~5

若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。

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

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

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

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

~D

~~~5

以下关于说法正确的是()。

实参和与其对应的形参各占用独立的存储单元

实参与其对应的形参共占用一个存储单元

实参和与其对应的形参同名时才共占用存储单元

形参虚拟的,不占用存储单元

~A

~~~5

若调用一个函数(无全局、指针、静态变量),且此函数中没有return语句,则关于该函数正确的说法是()。

无返回值

返回若干个系统默认值

能返回一个用户所希望的函数值

返回一个不确定的值

~A

~~~5

在c语言中以下不正确的说法是()。

实参可以是常量、变量或表达式

形参可以是常量、变量或表达式

实参可以为任意类型

形参应与其对应的实参类型一致

~B

~~~5

下列程序段的输出结果是()。

#defineM(x,y)x*yprintf("%d",M(10+2,2));

14

24

50

32

~A

~~~5

若程序中定义了以下函数:

doublemyadd(doublea,doubleb){return(a+b);}并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是()。

doublemyadd(doublea,b);

doublemyadd(double,double);

doublemyadd(doubleb,doublea);

doublemyadd(doublex,doubley);

~A

~~~5

程序设计中,以下错误的描述是()。

在函数之外定义的变量称为外部变量,外部变量是全局变量

在一个函数中既可以使用本函数中的局部变量,又可以使用外部变量

外部变量定义和外部变量说明的含义不同

若在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量不起作用

~A

~~~5

程序设计中,建立函数的首要目的是()。

减少程序的运行时间

提高程序的可读性

减少程序的篇幅

减少程序运行时文件所占内存

~B

~~~5

程序设计中,下列结论只有一个是正确的,它是()。

在递归函数中使用自动变量要十分小心,因为在递归过程中,不同层次的同名变量在赋值的时候一定会相互影响

在递归函数中使用自动变量要十分小心,因为在递归过程中,不同层次的同名变量在赋值的时候可能会相互影响

在递归函数中使用自动变量不必担心,因为在递归过程中,不同层次的同名变量在赋值的时候肯定不会相互影响

在程序设计语言中无法得出以上结论之一

~C

~~~5

下面关于变量的说法错误的是()。

全局变量是所有在函数和类外定义的变量

局部变量是在块或函数中定义的变量

在同一作用域内变量不能同名

变量作用域不能重叠

~D

~~~5

下面关于变量的生存周期的说法错误的是()。

全局变量的生存周期从程序运行开始到程序结束

局部变量的生存周期从块或函数的开始到块或函数的结束

静态局部变量的生存周期与全局变量相同

静态全局变量的作用域是整个程序

~D

~~~6

下列数据结构中,能用二分法进行查找的是()。

顺序存储的有序线性表(数组)

线性链表

二叉链表

有序线性链表

~A

~~~6

数组名作为参数传递给函数,作为实在参数的数组名被处理为()。

该数组的元素个数

该数组中各元素的值

该数组的首地址

以上答案均不对

~C

~~~6

若使用一维数组名作函数实参,则以下正确的说法是()。

无须在主调函数中说明此数组的大小

实参数组类型与形参数组类型可以不匹配

在被调用函数中,不需要考虑形参数组的大小

实参数组名与形参数组名必须一致

~C

~~~6

函数调用strcat(strcpy(str1,str2),str3)的功能是()。

将串str1复制到串str2中后在连接到串str3之后

将串str1连接到串str2之后再复制到串str3之后

将串str2复制到串str1中后再将串str3连接到串str1之后

将串str2连接到串str1中后再将串str1复制到串str3中

~C

~~~6

下列描述中不正确的是()。

字符型数组中可以存放字符串

可以对字符型数组进行整体输入、输出

可以对整型数组进行整体输入、输出

不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值

~C

~~~6

设有数组定义:

chararray[]="HELLO";则数组array的长度为()。

4

5

6

7

~C

~~~6

以下不能正确进行字符串赋初值的语句是()。

charstr[5]="good!

";

charstr[]="good!

";

char*str="good!

";

charstr[5]={'g','o','o','d'};

~A

~~~6

当调用函数时,实参是一个数组名,则向函数传送的是()。

数组的长度

数组的首地址

数组每一个元素的地址

数组每个元素中的值

~B

~~~6

下面正确进行字符串赋值操作的语句是()。

chars[5]=["ABCDDE"];

chars[4]={'A','B','C','D','E'};

char*s;s="ABCDEF";

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

~C

~~~6

有以下程序:

chara[]="abcdefg",b[10]="abcdefg";printf("%d%d\n",sizeof(a),sizeof(b));执行后输出结果是()

77

88

810

1010

~C

~~~6

以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是()。

chars[10]="abcdefg";

chart[]="abcdefg",*s=t;

chars[10];s="abcdefg";

chars[10];strcpy(s,"abcdefg");

~C

~~~6

若有以下程序段:

inta[5]={1,2,3,4,5};int*p=a;则以下说法正确的是()

a可以做自增运算,即有a++;

p可以做自增运算,即有p++;

a和p都可以做自增运算,即有a++和p++;

a和p都不能做自增运算。

~B

~~~7

若有语句:

char*LINE[5];以下叙述中正确的是()。

定义LINE是一个数组,每个数组元素是一个基类型为char的指针变量

定义LINE是一个指针变量,该变量可以指向一个长度为5的字符型数组

定义LINE是一个指针数组

定义LINE是一个指向字符型函数的指针

~A

~~~7

设有定义,intn1=0,n2,*p=&n2,*q=&n1;以下赋值语句中与n2=n1;语句等价是()。

*p=*q;

p=q;

*p=&n1;

p=*q;

~A

~~~7

若有定义:

intx=0,*p=&x;则语句printf("%d\n",*p);的输出结果是()。

随机值

0

x的地址

p的地址

~B

~~~7

有以下程序:

main(){inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],*q=p-2;printf("%d\n",*p+*q);}程序运行后的输出结果是()。

16

10

8

6

~D

~~~7

已定义以下函数:

intfun(int*p){return*p;}该函数的返回值是()。

不确定的值

形参p中存放的值

形参p所指存储单元中的值

形参p的地址值

~C

~~~7

若己定义:

inta[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是()。

p+l

a+l

a++

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2