C语言试题库(完整版)

更新时间:2023-11-11 13:18:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C语言试题库

一、 单项选择

第一章 C语言概述

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

A、本程序的MAIN函数开始,到MAIN 函数结束。

B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C、本程序的MAIN函数开始,到本程序的最后一个函数结束。 D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。 (2)以下叙述正确的是

A、 在C程序中,MAIN函数必须位于程序的最前面。 B、 C程序的每行中只能写一条语句。 C、 C语言本身没有输入输出语句。

D、 在对一个C程序进行编译的过程中,可发现注释中的拼写错误。 (3)C语言规定,在一个源程序中,MAIN主函数的位置是在: A、 必须在最前面。 B、 必须在系统调用的库函数的后面 C、 可以在任意位置。 D、 必须在最后面

(4)一个C程序是由: A、 一个主程序和若干子程序组成 B、 函数组成 C、 若干过程组成 D、 若干子程序组成

(5)以下叙述不正确的是:

A、 一个C源程序可由一个或多个函数组成 B、 一个C源程序必须包含一个MAIN函数 C、 C程序的基本组成单位是函数

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

第二章 数据类型、运算符与表达式

(1)若x, i, j, k都是int型变量,则计算下面表达式后,x的值为 x=( i=4, j=16, k=32) A、4 B、16 C、32 D、52

(2)下列四组选项中,均不是C语言键字的选项是 A、define , IF, type B、getc, char, printf C、include, scanf, case E、 if, struct, type

(3)下面四个选项中,均是不合法的用户标识符的选项是 A、A,P_0,do B、float,1a0, _A C、b-a, goto, int D、_123, temp, INT

(4)若有代数式3ae/bc,则正确的C语言表达式是 A、a/b/c*e*3 B、3*a*e/bc C、3*a*e/b*c D、a*e/c/b*3

(5) 已知各变量的类型说明如下: int k, a, b;

unsinged long w=5; double x=1.42;

则以下不符合C语言语法的表达式是 A、x%(-3) B、w+=-2;

C、k=(a=2,b=3,a+b) D、a+=a-=(b=4)*(a=3)

第三章 简单C程序设计

(1)putchar函数可以向终端输出一个 A、整型变量表达式值 B、实型变量值 C、字符串

D、字符或字符型变量值

(2)若x,y均定义为int型,z定义为double 型,以下合法的scanf函数调用语句是 A、scanf(“%d%lx,%le”,&x,&y,&z); B、scanf(“-*%d%lf”,&x,&y,&z); C、scanf(“%x%*d%o”,&x,&y,&z); D、scanf(“%x%o%6.2f”,&x,&y,&z);

(3)当输入数据的形式为:25,13,10<回车>时,以下程序的输出结果为 main() {int x,y,z;

scanf(“%d%d%d”,&x,&y,&z); printf(“x+y+z=%d\\n”,x+y+z);

}

A、x+y+z=48 B、x+y+z=35 C、x+z=35 D、不确定值

(4) 以下能正确的定义整型变量a,b和c,并对它们赋初值为5的语句是 A、int a=b=c=5; B、int a, b, c=5; C、a=5, b=5, c=5; D、a=b=c=5;

(5) 若有以下定义,则正确的赋值语句是 int a,b; float x; A、a=1, b=2; B、b++; C、a=b=5; D、b=int(x);

第四章 选择结构程序设计

(1)能正确表示“当x的值在[1,10]和[200,210]的范围为真,否则为假”的表达式是 A、(x>=1)&&(x<=10)&&(x.>=200)&&(x<=210) B、(x>=1)││(x<=10) ││(x.>=200) ││(x<=210) C、(x>=1) &&(x<=10) ││(x.>=200) &&(x<=210) D、(x>=1)││(x<=10)&& (x.>=200) ││(x<=210) (2)以下程序的运行结果是

#include “stdio.h” main()

{int a,b,d=241; a=d/100%9; b=(-1)&&(-1); printf(“%d,%d”,a,b); }

A、6,1 B、2,1 C、6,0 D、2,0

(3)请阅读以下程序:

main()

{int a=5 , b=0 , c=0;

if (a+b+c) printf(“* * *\\n”); else printf(“$ $ $\\n”); }

以上程序 。

A) 有语法错误不能通过编译 B) 可以通过编译但不能直接通过连接 C) 输出* * * D) 输出$ $ $

(4)以下程序的运行结果是 。

main() {int m=5;

if(m++>5)printf(“%d\\n”,m); else printf(“%d\\n”,m——); } A) 4 B) 5 C) 6 D) 7

(5)为了避免在嵌套的条件语句中if-else中产生二义性,c语言规定:else子句总是与

相配对。

A)缩排位置相同的if B)其之前最近的if C)其之后最近的if D)同一行上的if

第五章 循环控制 (1)设有程序段 int k=10

while (k=0) k=k-1

则下面描叙正确的是 。 A) while (k=0) k=k-1; B) 循环是无限循环

C) 循环体语句一次也不执行 D) 循环体语句执行一次

(2)下面程序段的运行结果是 。 int n=0;

while(n++<=2); printf(“%d”,n); A) 2 B) 3 C) 4

D) 有语法错

(3)C语言中while和do-while循环的主要区别是 。 A) do-while的循环体至少无条件执行一次

B) while 的循环控制条件比do-while的循环控制条件严格 C) do-while允许从外部转到循环体内 D) do-while允许从外部转到循环体内

(4)以下能正确计算1*2*3*…*10的程序段是 。 A) do {i=1;s=1;

s=s*i; i++;

}while(I<=10); B) do {i=1;s=0;

s=s*i; i++;

}while(I<=10); C) i=1;s=1;

do {s=s*i; i++;

}while(I<=10); D) i=1;s=0;

do {s=s*i; i++;

}while(I<=10);

第六章 数组

(1)在c语言中,引用数组元素时,其数组下标的数据类型允许是____。 A) 整型常量 B) 整型表达式

C) 整型常量或整型表达式 D) 任何类型的表达式

(2)以下能对二维数组a进行正确初始化的语句是____。 A) int a[2][ ]={{1,0,1},{5,2,3,}}; B) int a[ ][3]={{1,2,3},{4,5,6}}; C) int a[2][4]={1,2,3,},{4,5},{6}}; D) int a[ ][3]={{1,0,1},{},{1,1}};)

(3)若有说明:int a[3][4]={0};则下面正确的叙述是____。

A) 只有元素a[0][0]可得到初值0 B) 此说明语句不正确 C) 数组a中各元素都可得到初值,但其值不一定为0 D) 数组a中每个元素均可得到初值0

(4)下面程序___(每行程序前面的数字表示行号)。

1 main() 2 {

3 float a[10]={0};

本文来源:https://www.bwwdw.com/article/4usv.html

Top