c语言初学者编程题目(轻巧夺冠).docxVIP

  • 0
  • 0
  • 约6.39千字
  • 约 13页
  • 2026-01-31 发布于山东
  • 举报

c语言初学者编程题目

第一部分单选题(50题)

1、逻辑表达式!5的结果是?()

A.0

B.1

C.5

D.真

【答案】:答案解析:5为真,!是逻辑非,真变假(0),故选A。

2、执行scanf(%d,%d,a,b);时,正确的输入格式是?()

A.23

B.2;3

C.2,3

D.2和3

【答案】:答案解析:scanf格式串中含逗号分隔符,输入需严格对应,故选C。

3、若charstr[]=helloworld;则字符串长度是?()

A.10

B.11

C.12

D.13

【答案】:答案解析:helloworld含11个字符(不含\0),长度为11,故选B。

4、以下关于指针的说法错误的是?()

A.指针可指向变量、数组、函数

B.指针可进行算术运算(如++、--)

C.指针可指向自身

D.指针可用于动态内存分配

【答案】:答案解析:指针不能指向自身(类型不匹配),A、B、D说法正确,故选C。

5、函数声明的作用是?()

A.告诉编译器函数的存在

B.实现函数功能

C.分配函数内存

D.调用函数

【答案】:答案解析:函数声明用于向编译器说明函数名、参数、返回类型(确保调用正确),定义才是实现功能,故选A。

6、若inta=4,b=6;则表达式ab?a+b:a-b的结果是?()

A.10

B.-2

C.4

D.6

【答案】:答案解析:ab为真,取a+b=4+6=10,故选A。

7、以下数组定义错误的是?()

A.inta[5];

B.inta[5]={1,2,3,4,5};

C.inta[5]={1,2,3,4,5,6};

D.inta[]={1,2,3,4,5};

【答案】:答案解析:C初始化元素超5个,编译报错,其余正确,故选C。

8、以下哪个不是C语言的关键字?()

A.if

B.else

C.then

D.for

【答案】:答案解析:then不是C语言关键字,if(条件)、else(否则)、for(循环)均是,故选C。

9、以下if语句中,赋值表达式作为条件的是?()

A.if(x==3)

B.if(x=3)

C.if(x3)

D.if(x!=3)

【答案】:答案解析:x=3是赋值表达式,结果为3(非0,真),其余是判断表达式,故选B。

10、putchar()函数的功能是?()

A.读取一个字符

B.输出一个字符

C.读取字符串

D.输出字符串

【答案】:答案解析:putchar()用于输出单个字符,getchar()读取单个字符,puts()输出字符串,故选B。

11、若inta[4]={1,2,3,4};则*(a+1)的值是?()

A.1

B.2

C.3

D.4

【答案】:答案解析:a是首地址,a+1是第二个元素地址,*(a+1)=a[1]=2,故选B。

12、以下关于数组越界的说法正确的是?()

A.编译时会报错

B.运行时一定会崩溃

C.可能导致程序错误

D.无影响

【答案】:答案解析:数组越界属于未定义行为,编译时不报错,运行时可能正常或崩溃,故选C。

13、以下哪个for循环是无限循环?()

A.for(i=0;i5;i++)

B.for(;;)

C.for(i=0;i5;i--);

D.for(i=5;i0;i--)

【答案】:答案解析:for循环三个表达式均省略时,条件恒为真,是无限循环,A执行5次,C、D初始条件不满足(执行0次),故选B。

14、转义字符\0的作用是?()

A.表示空格

B.表示制表符

C.字符串结束标志

D.换行

【答案】:答案解析:\0ASCII码为0,是字符串默认结束标志,不计入长度,故选C。

15、以下for循环的循环变量初始化表达式为“i=5”的是?()

A.for(i=0;i5;i++)

B.for(i=5;i0;i--)

C.for(i=2;i=5;i++)

D.for(i=5;i10;i+=2)

【答案】:答案解析:初始化表达式是for循环第一个部分,B中i=5符合,其余初始化非5,故选B。

16、以下二维数组定义中,行数为2的是?()

A.inta[2][3];

B.inta[][3]={1,2,3,4,5,6};

C.inta[2][3]={1,2,3,4,5};

D.以上都是

【答案】:答案解析:A行数2,B初始化6个元素(3列×2行),C行数2,故选D。

17、若inta=7;执行if(a%3==1)printf(A);elseif(a%3==2)printf(B);elseprintf(C);输出结果是?()

A.A

B.B

C.C

D.无输出

【答案】:答案解析:7%3=1?7/3=2余1?不,7%3=1?7-3*2

文档评论(0)

1亿VIP精品文档

相关文档