C语言基本概念
能将高级语言编写的源程序转换成目标程序的是______。
A) 编辑程序 B) 编译程序 C) 解释程序 D) 链接程序 以下选项中合法的用户标识符是______。
A) long B) _2Test C) 3Dmax D) A.dat 以下叙述正确的是( )
A) 可以把define和if定义为用户标识符
B) 可以把define定义为用户标识符,但不能把if定义为用户标识符 C) 可以把if定义为用户标识符,但不能把define定义为用户标识符 D) define和if都不能定义为用户标识符 以下叙述正确的是( ) A) C语言比其他语言高级
B) C语言可以不用编译就能被计算机识别执行
C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D) C语言出现的最晚、具有其他语言的一切优点 在一个C语言程序中_______ A) main函数必须出现在所有函数之前 B) main函数必须出现在所有函数之后 C) main函数可以在任何地方出现 D) main函数必须出现在固定位置
一个C语言程序是由_______组成的。
A) 一个主程序和若干子程序 B) 若干子程序 C) 函数 D) 若干过程 以下叙述中正确的是( )
A) C语言的源程序不必通过编译就可以直接运行
B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令 C) C源程序经编译形成的二进制代码可以直接运行 D) C语言中的函数不可以单独进行编译
下列关于C语言用户标识符的叙述中正确的是( )
A) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头 B) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头 C) 用户标识符中不可以出现中划线,但可以出现下划线 D) 用户标识符中可以出现下划线和中划线(减号) 以下说法中正确的是( )
A)C语言程序总是从第一个定义的函数开始执行
B)C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行
D)C语言程序中的main()函数必须放在程序的开始部分 一个C程序的执行是从( )
A)本程序的main函数开始,到main函数结束
B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 C语言编程整个操作的过程是( ) A)编辑、编译、链接、执行
B)编译、编辑、链接、执行 C)链接、编译、编辑、执行 D)编辑、链接、编译、执行
下列说法不正确的是( ) A)链接操作将生成扩展名为.lnk的文件
B)编辑过程将生成扩展名为.cpp或.c的文件 C)编译过程将生成扩展名为.obj的文件 C)C编程最终要生成扩展名为.exe的文件
C语言提供了丰富的结构化语句,直接支持____、_____和_______三种基本程序结构。 A)顺序、分支、过程 B)顺序、分支、循环 C)分支、过程、循环 D)顺序、过程、循环
下列说法正确的是( )
A)C语言版本众多,但这些版本大多不能兼容 B)C语言只能在固定的操作系统上运行。
C)C语言不包含依赖硬件的输入/输出语句,其输入/输出功能语句需要手工来编写。 D)C语言允许对位、字节、地址这些计算机功能中的基本成分进行操作。
当用户用编辑器将C语言程序录入到计算机后,就建立一个源文件,则( ) A)源文件可以直接被计算机执行 B)源文件需要编译后就可执行
C)源文件经过编译链接后生成的可执行程序和源程序是独立的 D)错误调试一般在执行过程进行 下列说法中正确的是( )
A.由于C源程序是高级语言程序,因此一定要在VC++软件中输入
B.由于C源程序是字符组成,因此可以作为文本文件在任何文本编辑的软件中输入 C.由于C程序是高级语言程序,因此输入后即可执行 D.由于C程序是高级语言程序,因此它由命令组成 下列说法中错误的是( )
A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其它函数 C. 任何非主函数可以调用其它任何非主函数 D. 程序可以从任何非主函数开始执行 答案:BBDCC CBCCA AABDC BD
C基本数据类型及计算
下列不正确的C语言用户标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 下列正确的C语言标识符是____。 A) #define B) _123 C) %d D) \\n
下列四组字符串中都可以用作C语言程序标识符的一组是____ 。 A) print __123 Pxq str_l
B) _3d one_half My->book Cpp
C) oodb start$it line# pow D) aBc 3pai His.age while
下面各选项组中,均是C语言关键字的组是____ 。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type 下列不属于C语言关键字的是____ 。 A) default B) register C) enum D) external 执行语句 printf(\;屏幕显示____。 A) -1 B) 1 C) -ffff D) ffffffff
已知 int a=2,b=1,c;执行语句c=b/a+2.5后, c的值____。 A) 2.5 B) 3 C) 3.0 D) 2
有关变量已经定义,以下合法的数值表达式是____。 A) a=1/b=2 B) ++(a+b) C) b=b/(a=6) D) c=int(a)+b 将字符g赋给字符变量c,正确的表达式是____ 。 A) c=\\147 B) c=\ C) c='\\147' D) c='0147' 下列转义字符中错误的一个是____。 A) '\\000' B) '\\014' C) '\\x111' D) '\\2'
将空格符赋给字符变量c,正确的赋值语句是____。 A) c='\\0' B) c=NULL C) c=0 D) c=32 已知:char a='\\70';则变量a中 。 A)包含1个字符 B)包含2个字符 C)包含3个字符 D)说明非法
字符串\的长度是____。 A) 8 B) 9 C) 14 D) 非法字符串 字符串\的长度是____。
A) 0 B) 1 C) 2 D) 非法字符串
已知:char a;int b;float c;double d;执行语句\;\后,变量c的数据类型是 。
A) int B) char C) float D) double
逗号表达式\的值是____。 A) 15 B) 60 C) 30 D) 不确定
如果int a=1,b=2,c=3,d=4;则条件表达式a
已知int i=10;表达式\的值是____。 A) 0 B) 1 C) 19 D) 20
已知int x=1,y;执行下述语句后变量x的值是____。 y=++x>5&&++x<10;
A) 1 B) 2 C) 3 D) 4
为判断字符变量c的值不是数字也不是字母时,应采用下述表达式____。 A) c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122 B) !(c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122) C) c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122 D) !(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122)
已知int x=5,y=5,z=5;执行语句x%=y+z;后,x的值是____。 A) 0 B) 1 C) 5 D) 6
答案:ABABD DDCCC DABAC CABBD C
输入和输出
设a=3,b=4, 执行“printf(“a=%d,B=%d\”的输出是( ) A. a=3,b=4 B. 3,4 C. a=3,B=4 D.a=3 B=4
设a=1234,b=12,c=34 执行“printf(“|==%-3d|\\n”,a,b,c); ”的输出是( ) A.|12341234 | B.|1231234| C.|123412-34| D.|2341234| 使用“scanf(“x=%f,y=%f”,&x,&y);”,要使x,y均为1.25,正确的输入是( ) A. 1.25,1.25 B. 1.251.25 C. x=1.25,y=1.25 D. x=1.25 y=1.25 要使double x; long a; 获得数据,正确的输入语句是( ) A. scanf(“%d,%f”,&a,&x); B. scanf(“%f,%ld”,&x,&a); C. scanf(“%d,%lf”,&a,&x); D. scanf(“%ld,%lf”,&a,&x);
设有int a=255,b=8;则printf(“%x,%o\\n”,a,b);的输出的是( ) A. 255,8 B. ff,10 C. 0xff,010 D. 输出格式错
设a、b为字符型变量,执行“scanf(“a=%c,b=%c”,&a,&b);”后使a为’A’,b为’B’,从键盘上的正确输入是( )
A. ?A??B? B. ?A?,?B? C. A=A,B=B D. a=A,b=B 语句printf(“%f%%”,1.0/3);的输出结果为:
A.0.333333 B.0.333333% C.0.333333%% D.出错
已有定义int x ;float y;且执行scanf(\输入数据为12345 678<回车>,则x和y的值为:
A.123 45.000000 B.123 678.000000 C.12345 678.000000 C.345 678.000000 有如下的定义和输入语句: int a1,a2;char c1,c2; scanf(\ scanf(\
若要求a1,a2,c1,c2的值分别为10、20、A和B,则正确的数据输入方式为( ) A. 1020AB B. 10 20
已有定义:float f1,f2;程序运行时输入数据为4.52 3.5 ,则输入语句正确的为( ) A.scanf(\ B.scanf(\ C.scanf(\ D.scanf(\
下列数据中属于“字符串常量”的是( ) A.“a” B. {ABC} C. ?abc\\0? D. ?a? 在PC机中,‘\\n’在内存占用的字节数是( ) A. 1 B. 2 C. 3 D. 4 在PC机中,“a\\xff” 在内存占用的字节数是( ) A. 5 B. 6 C. 3 D. 4
在C语言中,合法的长整型常数是( )
A. 0L B. 4962710 C. 0.054838743 D. 2.1869e10 下列数据中不属于“字符常量”的是( )
A. ?\\a? B. ?\\160? C. ?\\070? D. 070 答案:CACDB DBADB AACAD
C程序控制结构
结构化程序设计的3种结构是 A)顺序结构、选择结构、转移结构 B)分支结构、等价结构、循环结构 C)多分支结构、赋值结构、等价结构 D)顺序结构、选择结构、循环结构 已知 int t=0;
while (t=1) {...}
则以下叙述正确的是
A)循环控制表达式的值为0 B)循环控制表达式的值为1 C)循环控制表达式不合法 D)以上说法都不对
有如下程序: main()
{
int x=1,a=0,b=0; switch(x) {
case 0: b++; case 1: a++; case 2: a++;b++; }
printf(\\n\);}
该程序的输出结果是
A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2 有以下程序 main()
{int i=1,j=1,k=2; if((j++||k++)&&i++)
printf(\\n\); }
执行后输出结果是
A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 有如下程序 main()
{float x=2.0,y; if(x<0.0)y=0.0;
else if(x<10.0)y=1.0/x; else y=1.0;