C语言期末考试题库(pta题库)

分号是 C 语言中语句的结束符 , 不可用作分隔符。

TF

参考答案

F


1-2

以下程序段符合C语言语法。

k = 1;

int k;

TF

参考答案

F


1-3

C语言中的变量名属于标识符。

TF

参考答案

T


1-4

C语言中3/2的值是1。

TF

参考答案

T


1-5

c语言中三种循环语句可以相互嵌套。

TF

参考答案

T


1-6

c语言的数组下标从0开始。

TF

参考答案

T


1-7

C语言程序有且仅有一个main函数

TF

参考答案

T


1-8

C语言中,8<10<0 是不符合C的语法规则的表达式,无法计算其值。

TF

参考答案

F


1-9

C 是低级语言

C 语言是低级语言。

TF

参考答案

F


1-10

在C语言中,"A"和'A'等价。

TF

参考答案

F


1-11

C 语言的标识符由字母、数字和其他任意字符组成。

TF

参考答案

F


1-12

C的double类型数据可以精确表示任何实数。

TF

参考答案

F


1-13

在switch语句中,不一定使用break语句。

TF

参考答案

T


1-14

int a=1,b=2,c=3;if(a>c)b=a;a=c;c=b;则c的值为2.

TF

参考答案

T


1-15

在for(表达式1;表达式2;表达式3)中,如果表达式2为空,表示循环条件默认为真。

TF

参考答案

T


1-16

可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数。

TF

参考答案

T


按照C语言的规定,在参数传递过程中,既可以将实参的值传递给形参,也可以将形参的值传递给实参,这种参数传递是双向的。

TF

参考答案

F


1-18

对于定义int a[5],*p=a;后,*(p+1)和*(a+1)的值是相同的。

TF

参考答案

T


1-19

指针数组的每个元素都是一个指针变量。

TF

参考答案

T


1-20

结构指针就是指向结构类型变量的指针。

TF

参考答案

T


1-21

在 C 程序中,9ab是非法的用户标识符。

TF

参考答案

T


1-22

C程序中的main函数必须放在整个程序的最前头。

TF

参考答案

F


1-23

执行以下程序段,输入1.0 0.01 365,输出1.0#0.010#365。

int day;

double factor, initial;

scanf("%lf %lf %d", &initial, &factor, &day);

printf("%.1f#%.3f#%d", initial, factor, day);

TF

参考答案

T


1-24

如果变量已经正确定义,则执行以下程序段后,x的值不变。

if (x = 20) {

   y = 1;

} else {

   y = 0;

TF

参考答案

F


1-25

执行以下程序段,将输出10。

int i = 10;

while (i < 10){

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

}

TF

参考答案

F


1-26

在C语言中,可以将主调函数放在被调函数的后面,省略函数的声明。

TF

参考答案

T


1-27

引用二维数组的元素要指定两个下标,即行下标和列下标,一般形式如下。

数组名[列下标][行下标]

TF

参考答案

F


1-28

执行语句int *p = 1000;后,指针变量p指向地址为1000的变量。

TF

参考答案

F


1-29

一个结构类型变量所占的内存空间是其各个成员所占内存空间之和。

TF

参考答案

T


1-30

一个结构体类型中的各个成员的类型必须是相同的。

TF

参考答案

F


1-31

在C程序中,逗号运算符的优先级最低.

TF

参考答案

T


1-32

若 a=3,b=2,c=1 则关系表达式"(a>b)==c" 的值为"真".

TF

参考答案

T


1-33

int x=3,y=2;printf("%d",x*=y+8);输出为30.

TF

参考答案

T


1-34

int i=20;switch(i/10){case 2:printf("A");
case 1:printf("B");}的输出结果为A.

TF

参考答案

F


1-35

for(;;);是错误的.

TF

参考答案

F


1-36

for(m=22;m<1000;m++) if(m%3==0&&m%7!=0)break;是当m能被3整除或m不能被7整除时,结束本次循环进入下次循环.

TF

参考答案

F


1-37

对于一维数组,例如:int arr[3]; 则arr[3]表示数组的第3个元素。

TF

参考答案

F


1-38

数组说明 int a[3][]={1,2,3,4,5}; 是正确的.

TF

参考答案

F


1-39

结构体成员的类型必须是基本数据类型。

TF

参考答案

F


1-40

不同类型的结构变量之间也可以直接赋值。

TF

参考答案

F


1-41

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

TF

参考答案

F


1-42

若有定义int a[10],则数组a的最大下标为10。

TF

参考答案

F


1-43

指针和它所指向对象的类型必须保持一致。

TF

参考答案

T


1-44

定义结构体变量后,系统不会自动为其分配内存单元。

TF

参考答案

F


1-45

数组说明 int a[3,3]={1,2,3,4,5,6}, 是正确的.

TF

参考答案

F


1-46

scanf()函数中格式字符s的功能用来输入字符串。

TF

参考答案

T


1-47

字符串以串结束标志“\0”作为最后一个字符。

TF

参考答案

T


1-48

执行以下程序段,sum的值是55。

int i, sum;

for (i = 1; i <= 10; i++){

    sum = sum + i;

}

TF

参考答案

F


1-49

for(i=0;i<9;i++)能控制循环10次.

TF

参考答案

F


1-50

不同类型的指针变量是可以直接相互赋值的。

TF

参考答案

F


1-51

在C语言中,变量必需先定义后使用.

TF

参考答案

T


1-52

执行以下程序段后,x的值为0,y的值为1。

int x, y;

if (x = 0) y = 0;

else y = 1;

TF

参考答案

T


1-53

以下两个程序段等价,其功能是计算 s=1+3+5+7+9。

/* 程序段A*/

s = 0;

i = 0;

while(i < 10){

    i++;

    if(i % 2 == 0){

        continue;

    }

    s = s + i;

}

/* 程序段B */

s = 0;

i = 0;

while(i < 10){

    i++;

    if(i % 2 != 0){

         s = s + i;

    }

}

TF

参考答案

T


1-54

可以使用switch-case的结构,都可以转换为if-else。反之,不成立。

TF

参考答案

T


1-55

调用scanf()函数进行字符数组输入时,空格和换行符都可以作为字符串的一部分而能读入.

TF

参考答案

F


1-56

循环结构中的continue语句是使整个循环终止执行.

TF

参考答案

F


1-57

数组定义后,只能引用单个的数组元素,而不能一次引用整个数组。

TF

参考答案

T


1-58

表达式 (j=3, j++) 的值是4.

TF

参考答案

F


1-59

int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为3.

TF

参考答案

F


1-60

if(strcmp(temp,str)>0)中的条件是当字符串temp大于字符串str为真时.

TF

参考答案

T


1-61

continue语句一般放在条件语句中,条件成立时结束本次循环,直接进入下一次循环。

TF

参考答案

T


1-62

两个字符串中的字符个数相同时才能进行字符串大小的比较

TF

参考答案

F


1-63

已有定义 int a=5;int *p=&a;则 执行 *p=*p+3;后a的值变成了8.

TF

参考答案

T


1-64

下面这段程序,将循环有限次,在打印输出有限行之后,程序将正常结束。

#include "stdio.h"

int main(){

    for(long num=1; num>0; num++)

        printf("%ld\n", num);

    return 0;

}

TF

参考答案

T


1-65

switch语句中break语句是必须的。

TF

参考答案

F


1-66

增1减1运算符的前缀运算和后缀运算的表达式值是相同的。

TF

参考答案

F


1-67

default 在switch选择结构中是必须的。

TF

参考答案

F


1-68

假设运算符'*'和'%'都是右结合的,则表达式 (3*5%3) 的值为6。

TF

参考答案

T


1-69

-有一段程序如下:

int getSum(int k){

    int s;

    s = getSum(k+1) + k;

    return s;

}

int main(){

    int sum;

    sum = getSum(0);

    return 0;

}

递归函数getSum设计不合理,这段程序将无限递归,始终不能结束。

TF

参考答案

F


1-70

递归函数里不能出现导致死循环的迂回逻辑。

TF

参考答案

T


1-71

执行语句int *p; 后,指针变量p只能指向int类型的变量。

TF

参考答案

T


1-72

结构体成员的类型必须是基本数据类型。

TF

参考答案

F


1-73

可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数。

TF

参考答案

T


1-74

在 C 程序中,无论多少大的整数还是实数,都能准确无误的表示。

TF

参考答案

F


1-75

在C程序运行过程中,其值不能被改变的量称为常量,其值可以改变的量称为变量。

TF

参考答案

T


1-76

设变量已正确定义,执行以下程序段,顺序输入三个字符'k',则输出k。

scanf("%c%c%c", &ch1, &ch2, &ch3);

printf("%c", ch2);

TF

参考答案

T


1-77

C程序中的注释部分不会参与程序的编译和执行。

TF

参考答案

T


1-78

在C程序中,函数可以嵌套调用,但不可以嵌套定义。

TF

参考答案

T


1-79

赋值语句a=b,是把变量b的值赋给变量a,变量b的值如果发生变化,a的值也一定跟着变化。

TF

参考答案

F


1-80

以下这段代码有编译错误,因为C语言不允许重复定义同名变量,两处int k的定义是冲突的。

#include <stdio.h>

int main(){

    int k=3;

    int i=1;

    while(i<5){

        int k;

        k = i+5;

        i++;

        printf("%d", k);

    }

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

    return 0;

}

TF

参考答案

F


1-81

以下代码在Dev C++中可以运行。

int a[3]={1,2,3};

printf("%d",a[3]);

TF

参考答案

T


1-82

C程序在调用有参数函数时,既可以将实参的值传递给形参,也可以反过来将形参的值传递给实参。

TF

参考答案

F


1-83

函数的嵌套就是在一个函数中定义另外一个函数。

TF

参考答案

F


1-84

调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

TF

参考答案

T


1-85

数组所占的存储单元可以说不连续的。

TF

参考答案

F


1-86

数组的下标可以是一个表达式,但是表达式计算得到的值必须是一个整数。

TF

参考答案

T


1-87

程序中一旦调用了某个函数,该函数就会完成特定的计算,然后返回到调用它的地方。

TF

参考答案

T


1-88

C语言在判断真假的时候认为非零即真

TF

参考答案

T


1-89

C语言的头文件的扩展名是.c

TF

参考答案

F


1-90

C语言中,一个程序文件中只能有一个main函数

TF

参考答案

T


1-91

在while循环中,需要设置循环终止条件,否则循环会一直进行下去,变成死循环。

TF

参考答案

T


1-92

关系运算符“<“优先级高于关系运算符”==”。

TF

参考答案

T

选择题

分数 1

作者 往年试卷

单位

已知字符 'a' 的ASCII码为 97,执行下列语句的输出是____。

printf ("%d, %c", 'b', 'b'+1 ) ;

A.

98, b

B.

语法不合法

C.

98, 99

D.

98, c

参考答案

D


2-2

分数 1

作者 王秀

单位

已知int i, a; 执行语句i=(a=2*3,a*5),a+6;后,变量i的值是( )。

A.

6

B.

12

C.

30

D.

36

参考答案

C


2-3

分数 1

作者 王秀

单位

在C语言中,数字029是一个( )。

A.

八进制数

B.

十进制数

C.

十六进制数

D.

非法数

参考答案

D


2-4

分数 1

作者 张高燕

单位

下面合法的C语言字符常量是()。

A.

'\t'

B.

"A"

C.

'xx'

D.

A

参考答案

A


2-5

分数 1

作者 颜晖

单位

C语言表达式( )的值不等于1。

A.

123/100

B.

901%10

C.

76%3

D.

625%5

参考答案

D


2-6

分数 1

作者 基础教研室

单位

正确的C语言标识符是 ( )。

A.

_buy_2

B.

2_buy

C.

?buy

D.

buy?

参考答案

A


2-7

分数 1

作者 基础教研室

单位

以下符合C语言语法的赋值表达式是( )。

A.

a=9+b+c=d+9

B.

a=(9+b, c=d+9)

C.

a=9+b, b++, c+9

D.

a=9+b++=c+9

参考答案

B


2-8

分数 1

作者 黄龙军

单位

C语言的scanf和printf函数的头文件是( )。

A.

iostream.h

B.

stdlib.h

C.

math.h

D.

stdio.h

参考答案

D


2-9

分数 1

作者 黄龙军

单位

在C/C++语言中,每个语句必须以( ) 结束。

A.

换行符

B.

冒号

C.

逗号

D.

分号

参考答案

D


2-10

分数 1

作者 王宇

单位

对应代数表达式3a÷(b+c),C语言的表达式是()

A.

3*a(b+c)

B.

3a/(b+c)

C.

3*a/b+c

D.

3*a/(b+c)

参考答案

D


2-11

分数 1

作者 李冶

单位

C语言中宏定义的关键词是

A.

define

B.

ifdef

C.

extern

D.

typedef

参考答案

A


2-12

分数 1

作者 王金玲

单位

C语言的switch(表达式),其中表达式可以是( ).

A.

只能为整数型

B.

只能为实数型

C.

可以是整数型和字符型

D.

可以是任意类型

参考答案

C


2-13

分数 1

作者 赖晓燕

单位

在嵌套使用if语句时,C语言规定else总是

A.

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

B.

和之前与其最近的if配对

C.

和之前与其最近的且不带else的if配对

D.

和之前的第一个if配对

参考答案

C


2-14

分数 1

作者 周鹏

单位

C语言中while和do-while循环的主要区别是()。

A.

do-while的循环体至少无条件执行一次

B.

while的循环控制条件比do-while的循环控制条件严格

C.

do-while允许从外部转到循环体内

D.

do-while的循环体不能是复合语句

参考答案

A


2-15

分数 1

作者 姚红

单位

下列不属于C语言数据类型的是( )

A.

int

B.

float

C.

string

D.

char

参考答案

C


2-16

分数 1

作者 卢玲

单位

C语言的简单数据类型包括__________。

A.

整型、浮点型、逻辑型

B.

整型、逻辑型、字符型

C.

整型、字符型、逻辑型

D.

整型、浮点型、字符型

参考答案

D


2-17

分数 1

作者 卢玲

单位

在C语言中,认为__________为逻辑“真”。

A.

true

B.

大于0的数

C.

非0整数

D.

非0的数

参考答案

D


2-18

分数 1

作者 卢玲

单位

表示关系“x≤y≤z”的C语言表达式为__________。

A.

(x<=y)&&(y<=z)

B.

(x<=y)AND(y<=z)

C.

(x<=y<=z)

D.

(x<=y)&(y<=z)

参考答案

A


2-19

分数 1

作者 卢玲

单位

在C语言中,以__________作为字符串结束标志。

A.

'\n'

B.

' '

C.

'0'

D.

'\0'

参考答案

D


2-20

分数 1

作者 考研真题

单位

C语言代码段如下:

int i = 32777;

short si = i;

int j = si;

执行上述代码段后,j 的值是

A.

-32777

B.

-32759

C.

32759

D.

32777

参考答案

B


2-21

分数 1

作者 张高燕

单位

若" int n; float f=13.8; ",则执行"n=(int)f%3"后,n的值是( )。

A.

1

B.

4

C.

4.333333

D.

4.6

参考答案

A


2-22

分数 1

作者 颜晖

单位

执行以下程序段后,变量 c 的值是()

int a = 10, b = 20, c;

c = (a % 2 == 0) ? a : b

A.

0

B.

5

C.

10

D.

20

参考答案

C


2-23

分数 1

作者 徐镜春

单位

下列程序段输出结果为 ____。
int x=1, y=012;
printf(“%d”,y*x++);

A.

12

B.

10

C.

20

D.

24

参考答案

B


2-24

分数 1

作者 赖晓燕

单位

putchar()函数的功能是向终端输出

A.

多个字符

B.

一个字符

C.

一个实型变量值

D.

一个整型变量表达式

参考答案

B


2-25

分数 1

作者 唐艳琴

单位

switch 语句的case 后面______。

A.

只能是常量

B.

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值