c语音题库.docx
《c语音题库.docx》由会员分享,可在线阅读,更多相关《c语音题库.docx(37页珍藏版)》请在冰豆网上搜索。
c语音题库
综合练习
一、判断题
1.在Trubo_C中运行一个C程序时,实际上是运行后缀为.EXE的可执行文件。
2.在C语言中整数可用十进制数、八进制数和二进制数三种数制表示。
3.在程序的运行过程中,整型常量的值是可以改变的。
4.C程序中,用/*和*/界定的部分称之为注释,注释部分对程序的运行不起作用。
5.大括弧{}只能用来括复合语句。
6.do_while语句构成的循环不能用其它循环语句来代替。
7.不能用scanf函数输入字符。
8.在C程序中,函数的定义不可以嵌套,但函数的调用可以嵌套。
9.一个变量的作用域取决于变量定义语句在程序中出现的位置。
10.C语言的一个编译预处理命令用#开始,最后加分号。
11.C语言源程序文件经过编译、连接之后生成一个后缀为.EXE的文件。
12.C语言中以%o开头的数是八进制整数。
13.在程序的运行过程中,符号常量的值是可以改变的。
14.在C程序中,APH和aph代表不同的变量。
15.一个复合语句在语法上被认为是一条语句。
16.只能用while语句构成循环。
17.不能用printf函数输出字符。
18.C程序中各函数之间既允许直接递归调用也允许间接递归调用。
19.在函数外部定义的变量称为全局变量。
20.宏定义的命令行可以看作是一条C语句。
21.C语言源程序是可以用来直接运行的程序。
22.C语言中以%x开头的数是十六进制整数。
23.C程序中定义的变量,代表内存中的一个存储单元。
24.在C程序中,9ab是非法的用户标识符。
25.C语句必须用一个分号作为结束。
26.do_while语句构成的循环不能用break语句退出。
27.scanf函数是c语言的标准输入函数。
28.C程序的main函数不能有参数。
29.在函数内部定义的变量称为局部变量。
30.用#include包含的头文件的后缀必须是.h。
31.C语言程序的三种基本结构是顺序结构、选择结构和循环结构。
32.在C语言中整数只能表示为十进制数的形式。
33.在C程序中,无论多少大的整数还是实数,都能准确无误的表示。
34.Turbo-C语言中,字符类型数据占1个字节。
35.空语句是合法的C语句。
36.while语句的循环体不能是复合语句。
37.printf函数是c语言的标准输出函数。
38.C程序的main函数可以有参数,但参数不能是指针类型。
39.在main函数中定义的变量称为全局变量。
40.#include和#define不是C语句。
41.C语言程序的三种基本结构是嵌套结构、选择结构和循环结构。
42.C语言中018是合法的八进制整数。
43.C程序中所要用到的变量应该先定义,后使用。
44.十六进制数0x11的十进制数是17。
45.赋值语句是一种可执行语句。
46.for语句的循环体不能是空语句。
47.可以调用putchar函数输出字符。
48.C程序的main函数可以有参数,但参数不能是整型。
49.在一个C程序中,全局变量和局部变量是不能同名的。
50.C编译中的预处理是在编译之前进行的。
51.C语言程序的三种基本结构是顺序结构、转移结构和循环结构。
52.C语言中0xe是合法的十六进制整数。
53.在程序的运行过程中,其值可以改变的量是变量。
54.八进制数0x11的十进制数是9。
55.在赋值表达式的尾部加上一个分号,就构成了赋值语句。
56.C语言不允许循环嵌套。
57.可以调用getchar函数输入字符。
58.C程序中各函数之间允许直接递归调用不允许间接递归调用。
59.局部变量不能在复合语句内部定义。
60.宏定义是可以带参数的。
二、选择题
1.C语言程序的三种基本结构是顺序结构、选择结构和______结构。
A.循环B.递归C.转移D.嵌套
2.以下选项中正确的整型常量是_____。
A.12.B.-10C.1,900D.123x
3.在C语言程序中,用关键字______定义基本整型变量。
A.intB.floatC.doubleD.char
4.Turbo-C语言中,字符类型数据占_____字节。
A.1个B.2个C.4个D.8个
5.若a、b、c、d都是int类型变量且初值为0,______不是正确的赋值语句。
A.a=b=c=0;B.a=b;C.c+b;D.d=(c=22)-(b++);
6.若变量已正确定义并赋值,符合C语言语法的表达式是______。
A.a=a±1B.int(12.0%2)C.a=a+1;D.a=a
7.若a是基本整型变量,c是单精度实型变量,输入语句______是错误的。
A.scanf(”%d,%f”,&a,&c);B.scanf(”%d%f”,a,c);
C.scanf(”%d%f”,&a,&c);D.scanf(”d=%d,c=%f”,&a,&c);
8.对C程序在作逻辑运算时判断操作数真、假的表述,______是正确的。
A.0为假非0为真B.只有1为真C.-1为假1为真D.0为真非0为假
9.C语言中的简单数据类型有____。
A.整型、实型、逻辑型B.整型、实型、字符型
C.整型、字符型、逻辑型D.整型、实型、字符型、逻辑型
10.C语言程序规定必须用main作为______。
A.主函数名B.子函数名C.程序名D.变量名
11.下列语句定义pf为指向float类型变量f的指针,_____是正确的。
A.floatf,*pf=f;B.floatf,*pf=&f;C.float*pf=&f,f;D.floatf,pf=f;
12.若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x,_____是正确的。
A.p2=p1;B.p2=**p1;C.p2=&p1;D.p2=*p1;
13.定义一个4个元素的一维整型数组,_____是正确的。
A.floata[4];B.inta[]={1,2,3,4,5};C.inta[]={1,2,3};D.inta[4]={1};
14.数组定义为inta[3][2],数组a中有_____个元素。
A.2B.3C.5D.6
15.以下能正确进行字符串赋值或赋初值的语句组是______。
A.charstr[3]="key";
B.charstr[3]={'k','e','y'};
C.charstr[4];str="key";
D.char*s;s="key";
16.C语言中,形参的缺省的存储类说明是______。
A.autoB.staticC.registerD.extern
17.若变量已正确定义,表达式(j=3,j++)的值是_____。
A.3B.4C.5D.018.若x是整型变量,表达式(x=10.0/4.0)的值是_____。
A.2.5B.2.0C.3D.2
19.为读而打开文本文件aa.dat,的正确写法是_____。
A.fopen(”aa.dat”,”rb”);B.fopen(”aa.dat”,”w”)
C.fopen(”aa.dat”,”wb”);D.fopen(”aa.dat”,”r”)
20.算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为_____。
A.算术运算、赋值运算、关系运算B.算术运算、关系运算、赋值运算
C.关系运算、赋值运算、算术运算D.关系运算、算术运算、赋值运算
21.C语言程序的三种基本结构是顺序结构、______结构和循环结构。
A.选择B.递归C.转移D.嵌套
22.以下选项中不正确的整型常量是_____。
A.0B.–10uC.20LD.-1234
23.在C语言程序中,用关键字______定义短整型变量。
A.shortB.floatC.doubleD.char
24.十进制数16的十六进制数是_____。
A.11B.12C.13D.10
25.若变量已正确定义,______是合法的C语句。
A.a=1,b=2B.a=1=b;C.a=b=5;D.y=;
26.若变量已正确定义并赋值,符合C语言语法的表达式是______。
A.a=3,5;B.a+=1C.a=a+1=3D.12.3%4
27.若a是单精度实型变量,c是基本整型变量,以下正确的输入语句是______。
A.scanf("%f%d",a,c);B.scanf("%f%d",&a,&c);
C.scanf("%f%f",&a,&c);D.scanf("%d%f",&a,&c);
28.在C程序中,用_____表示逻辑值“真”。
A.trueB.非0的数C.非0整数D.大于0的数
29.设有说明语句chara=’\n’;,则变量a_____。
A.包含1个字符B.包含2个字符C.包含3个字符D.说明不合法30.C语言程序由组成。
A.子程序B.过程C.函数D.主程序和子程序
31.下列语句定义pd为指向int类型变量d的指针,_____是正确的。
A.intd,*pd=&d;B.int*pd=&d,d;C.floatd,*pd=&d;D.float*pd=&d,d;
32.若变量已正确定义并且指针p已经指向变量x,则&*p相当于_____。
A.xB.*pC.pD.*&x
33.定义一个4个元素的一维整型数组,_____是不正确的。
A.inta[4];B.inta[4]={1,2,3,4,5};C.inta[4]={1,2,3};D.inta[4]={1};
34.数组定义为inta[3][2]={1,2,3,4,5,6},数组元素_____的值为6。
A.a[3][2]B.a[2][1]C.a[1][2]D.a[2][3]
35.不正确的字符串赋值或赋初值的方式是______。
A.charstr[]="string";
B.charstr[7]={'s','t','r','i','n','g'};
C.charstr[10];str="string";
D.charstr[7]={'s','t','r','i','n','g',’\0’};
36.要调用数学函数时,在#include命令行中应包含_____。
[13]
A.”stdio.h”B.”string.h”C.”math.h”D.”ctype.h”
37.若变量已正确定义,表达式(j=1,++j)的值是_____。
A.1B.2C.3D.0
38.若x是单精度实型变量,表达式(x=10/4)的值是_____。
A.2.5B.2.0C.3D.2
39.为写而打开文本文件aa.dat,的正确写法是_____。
A.fopen(”aa.dat”,”rb”)B.fp=fopen(”aa.dat”,”w”)
C.fopen(”aa.dat”,”wb”)D.fp=fopen(”aa.dat”,”r”)
40.下列运算符中优先级最低的是_____。
A.“>=”和“<=”B.“>”和“<”C.“==”和“!
=”D.“<=”和“<”
41.C语言程序的三种基本结构是______结构、选择结构和循环结构。
A.顺序B.递归C.转移D.嵌套
42.以下选项中正确的实型常量是_____。
A.0B.-10C.0.19D.1.9*102
43.在C语言程序中,用关键字______定义长整型变量。
A.longB.floatC.doubleD.char
44.十进制数8的八进制数是_____。
A.11B.010C.8D.08
45.______不是合法的C语句。
A.{intj;j++;}B.{intj;j++;;}C.{intj;;j++;}D.{j++;intj;}
46.若变量a,b已正确定义并赋值,符合C语言语法的表达式是______。
A.a,bB.a≤bC.a≥bD.a≠b
47.对以下的scanf语句,正确的输入方式是______。
intk1,k2,k3,k4;
scanf("%d%d%d%d",&k1,&k2,&k3,&k4);
A.102030,40B.10203040C.10,203040D.102030,40
48.表达式!
x等效于_____。
A.x==1B.x==0C.x!
=1D.x!
=0
49.要定义字符型变量a并赋初值,_____是正确的。
A.chara=’3’;B.chara=”3”;C.chara=%;D.chara=*;
50.以下函数调用语句中,含有的实参个数是_____。
calc(exp1,(exp3,exp4,exp5));A.1B.2C.3D.4
51.下列语句定义整型指针p1、p2,_____是正确的。
A.intp1,p2;B.int*p1,*p2;C.int*p1,p2;D.int**p1,p2;
52.若变量已正确定义并且指针p已经指向变量x,则*&x相当于_____。
A.xB.*pC.&xD.&*p
53.数组定义为“inta[4];”,表达式_____是错误的。
A.*aB.a[0]C.aD.a++
54.数组定义为inta[2][3]={1,2,3,4,5,6},数组元素_____的值为1。
A.a[1][2]B.a[1][1]C.a[2][3]D.a[0][0]
55.表达式strlen(”hello”)的值是_______。
A.4B.5C.6D.7
56.要调用字符串函数时,在#include命令行中应包含_____。
A.”stdio.h”B.”string.h”C.”math.h”D.”ctype.h”57.若变量已正确定义且k的值是4,计算表达式(j=k++)后,_____是正确的。
A.j=4,k=5B.j=4,k=4C.j=5,k=4D.j=5,k=558.C语言中运算对象必须是整型的运算符是______。
A.%B./C.!
D.**
59.若有charfname[]="infile.dat";,则为读而打开文本文件infile.dat的正确写法是_____。
A.fopen(infile.dat,"r")B.fopen(infile.dat,"r")
C.fopen(fname,"r")D.fopen("fname","r")
60.下列运算符中,优先级从高到低依次为_____。
A.&&,!
,||B.||,&&,!
C.&&,||,!
D.!
,&&,||
61.在Trubo_C中,C语言源程序文件的后缀是______。
A.”.c”B.“.obj”C.“.exe”D.“.bas”
62.以下选项中不正确的实型常量是_____。
A.0.23E1B.2.3e-1C.1E3.6D.2.3e0
63.在C语言程序中,用关键字______定义无符号型变量。
A.unsignedB.floatC.doubleD.char
64.C语言程序中可以对程序进行注释,注释部分必须用符号______括起来。
A.‘{‘和’}’B.‘[‘和’]’C.“/*”和”*/”D.“*/”和”/*”
65.若a、b都是int类型变量,______不是正确的赋值语句。
A.a=b=60B.a=3.0;C.a=1,3;D.b=0;
66.若变量a,b,c已正确定义并赋值,符合C语言语法的表达式是______。
A.ab/c;B.a/c×bC.a·bD.a*b/c
67.若k是基本整型变量,则以下程序段的输出是_____。
k=8567;
printf("|%-6d|\n",k);
A.输出格式描述符不正确B.输出为|008567|C.输出为|8567|D.输出为|-08567|
68.为表示“a和b都大于0”,应使用的C语言表达式是_____。
A.(a>0)&&(b>0)B.a&&bC.(a>0)||(b>0)D.(a>0)|(b>0)
69.已知字符‘b’的ASCII码为98,执行下列语句后输出为_____。
printf("%d,%c",’b’,’b’+1);
A.98,bB.语句不合法C.98,99D.98,c
70.以下函数调用语句中,含有的实参个数是_____。
exce((v1,v2),(v3,v4,v5),v6);
A.6B.5C.4D.3
71.若变量已正确定义,表达式_____可以使指针px指向变量x。
A.px=&xB.px=xC.*px=&xD.*px=*x
72.若变量已正确定义并且指针p已经指向某个变量x,则(*p)++相当于_____。
A.p++B.x++C.*(p++)D.&x++
73.数组定义为inta[6],数组a中有_____个元素。
A.4B.5C.6D.7
74.下列各语句定义了数组,_____是不正确的。
A.inta[1][3];B.intx[2][2]={1,2,3,4};C.intx[2][]={1,2,4,6};D.intm[][3]={1,2,3,4,5,6};
75.表达式strcmp(“box”,”boss”)的值是一个_______。
A.正数B.负数C.0D.不确定的数
76.要调用字符函数时,在#include命令行中应包含_____。
A.”stdio.h”B.”string.h”C.”math.h”D.”ctype.h”77.若变量已正确定义且k的值是4,计算表达式(j=k--)后,_____是正确的。
A.j=4,k=4B.j=4,k=3C.j=3,k=4D.j=3,k=378.表达式((int)(3.0/2.0))的值是_____。
A.1.5B.1.0C.1D.0
79.若有charfname[]="outfile.dat";,则为写而打开文本文件outfile.dat正确写法是_____。
A.fopen(outfile.dat,"w")B.fopen(outfile.dat,"w")
C.fopen(fname,"w")D.fopen("fname","w")
80.在C语言中,优先级最低的运算符是_____。
A.*B.<81.C语言源程序文件经过C语言编译程序编译之后生成一个后缀为______的文件。
A.”.c”B.“.obj”C.“.exe”D.“.bas”
82.常数的书写格式决定了常数的类型和值,10L是____。
A.基本整型常数B.短整型常数C.长整型常数D.无符号型常数
83.在C语言程序中,用关键字______定义单精度实型变量。
A.intB.floatC.doubleD.char
84.以下各标识符组中,合法的用户标识符组为______。
A.b-b和abcB.CCP和floatC.hiy和D._isw和INT
85.若a是int类型变量,______不是合法的C语句。
A.{intj;j++;}B.;C.{;}D.,
86.把x、y定义成float类型变量,并赋同一初值3.14的定义语句是______。
A.floatx,y=3.14;B.floatx,y=2*3.14;C.floatx=3.14,y=3.14;D.floatx=y=3.14;
87.若a、b是基本整型变量,则以下程序段的输出是_____。
a=123;b=12345;
printf("|%4d,%4d|\n",a,b);
A.|123,12345|B.|123,1234|C.|123,12345|D.|123,2345|
88.为表示“x≥y≥z”,应使用的C语言表达式是_____。
A.(x>=y)&&(y>=z)B.(x>=y)AND(y>=z)C.(x>=y>=z)D.(x>=y)&(y>=z)89.执行下列语句后输出为_____。
printf("%d",‘a’<’b’);
A.1B.语法错C.0D.-1
90.在C程序中,若对函数类型未加说明,则函数的隐含类型为_____。
A.voidB.doubleC.intD.char
91.若变量已正确定义并且指针p已经指向变量x,则*p相当于_____。
A.xB.*pC.pD.*&x
92.若变量已正确定义,____不可以使指针p成为空指针。
[8]
A.p=NULLB.p=0C.p=’\0’D.p!
=0
93.数组定义为inta[3]={1,2,3},数组元素_____的值为3。
A.a[0]B.a[1]C.a[2]D.a[3]
94.下列各语句定义了数组,_____是正确的。
A.inta[][]={1,2,3,4};B.intx[2][2]={1,2,3,4,5};C.intx[2][]={1,2,4,6};D.intm[][3]={1,2,3,4,5,6};
95.若定义chara[80]=”windows”,b[]=”95”;语句printf(”%s”,strcat(a,b));输出结果是___。
A.windows95B.windowsC.95D.95windows
96.要调用输入输出函数时,在#include命令行中应包含_____。
A.”stdio.h”B.”string.h”C.”math.h”D.”ctype.h”97.若变量已正确定义且k的值是4,计算表达式(j=++k)后,_____是正确的。
A.j=4,k=5B.j=4,k=4C.j=5,k=4D.j=5,k=598.表达式(5/2)的值是_____。
A.0B.2C.2.0D.