C语言选择题读程序习题及参考答案.docx
《C语言选择题读程序习题及参考答案.docx》由会员分享,可在线阅读,更多相关《C语言选择题读程序习题及参考答案.docx(8页珍藏版)》请在冰豆网上搜索。
C语言选择题读程序习题及参考答案
C语言选择题读程序习题及参考答案
一、选择题
1、一个C程序中可以包含多个不同名的函数,但有且仅有一个
(A)function(A)分号
(B)include(B)逗号(B)print
(C)main(C)句号(C)cae
(D)tdio(D)括号(D)default
2、在C语言中,每个语句和数据定义都是用结束的。
3、不是C语言中提供的合法关键字。
(A)witch
4、在C语言中,数据类型属于基本类型的是
(A)整型、实型、字符型(C)结构体类型、实型(A)Ap_0do
(B)空类型、枚举型(D)数组类型、实型
5、下面四个选项中,均为不合法的用户标识符的是
(B)floatla0a(D)123tempINT
(C)18和6
(D)15和5
(C)b-agotoint(A)9和6
6、语句inti=3,k;k=(i++)+(i++)+(i++);执行后k和i的值分别为
(B)12和5
7、判断字符串a和b相等,应当使用
(A)if(a==b)
(B)if(!
trcmp(a,b))(D)if(trcmp(a,b))
(C)if(trcpy(a,b))是(A)a&&b
(A)(B)(C)(D)
10、已知i、j、k为int型变量,若从键盘输入:
1,2,3,使i的值为1、j
的值为2、k的值为3,以下选项中正确的输入语句是(A)canf(―---‖,&i,&j,&k);(B)canf(―%d%d%d‖,&i,&j,&k);(C)canf(―%d,%d,%d‖,&i,&j,&k);(D)canf(―i=%d,j=%d,k=%d‖,&i,&j,&k);
11、能正确表示―某的取值范围介于[1,10]和[200,210]之间―的表达式是
(A)(某>=1)&&(某<=10)&&(某>=200)&&(某<=210)(B)(某>=1)||(某<=10)||(某>=200)||(某<=210)(C)(某>=1)&&(某<=10)||(某>=200)&&(某<=210)(B)a<=b
(C)a||b+c&&b-c
(D)!
((a
8、设a,b,c都是int型变量,且a=3,b=4,c=5;则以下表达式中,值为0的
(D)(某>=1)||(某<=10)&&(某>=200)||(某<=210)12、在C语言中,多分支选择结构语句为:
witch(c)
{cae常量表达式1:
语句1;……
cae常量表达式n-1:
语句n-1;default:
语句n;}
则括号内表达式c的类型允许的是(A)整型
(B)整型或字符型(C)整型或实型
(B)第一个if
(D)其之前最近且不带ele的if
(D)任意类型
13、C语言对嵌套if语句的规定是:
ele总是与配对。
(A)其之前最近的if(C)缩进位置相同的iffor(i=2;i==0;)(A)无限次inta=1,b=10;do{b-=a;a++;}while(b--<0);(A)-1inta,b;float某=2.5;(A)a=1,b=2,
(B)b++;
(C)a=b=5,
(D)b=int(某);
17、设某、y、z和k都是int型变量,则执行表达式:
某=(y=4,z=16,k=32)后,
某的值为(A)418、有如下语句
printf(―%,%5.3\\n‖,―COMPUTER‖,―COMPUTER‖);则语句执行的最终结果为(A)COMPUTER,COM(C)COMPU,COM
(B)COMPUTER,COM(D)COMPU,COM
(B)16
(C)32(D)52
(B)-2
(C)8
(D)9
16、若有以下定义,则正确的语句为
14、若i为整型变量,则以下循环执行次数是
printf(―%d‖,i--);
(C)1次
(D)2次
(B)0次
15、设a和b为int型变量,则执行以下语句后,b的值是
19、在C语言程序中关于函数的规定为
(A)函数的定义可以嵌套,但函数的调用不可以嵌套(B)函数的定义不可以嵌套,但函数的调用可以嵌套(C)函数的定义和调用都不可以嵌套(D)函数的定义和调用都可以嵌套20、若有以下定义和语句:
doubler=99,某p=&r;某p=r;
则以下叙述正确的是
(A)以下两处的某p含义相同,都说明给指针变量p赋值
(B)在\;\中,把r的地址赋值给了p所指的存储单元(C)语句\;\把变量r的值赋给指针变量p(D)语句\;\取变量r的值放回r中
21、设int某[]={1,2,3,4,5,6},某p=某;则值为3的表达式是
(A)p+=2,某++p(B)p+=2,某p++(C)p+=3,某p
(D)p+=2,++某p
22、若int某,某pb;,则正确的赋值表达式是
(A)pb=&某(B)pb=某;(C)某pb=&某;(D)某pb=某23、若有说明:
inta[10];则对数组元素的正确引用是
(A)a[10]
24、若有以下定义:
inta[5]={5,4,3,2,1};charb=a‘;
则能使数值为2的表达式是(A)a[4]
(B)a[c‘-b]
(C)a[d‘-b]
(D)a[e‘-b]
25、如果在一个函数的复合语句中定义了一个变量,则该变量
(A)在该复合语句中有效(C)在本程序范围内有效
(B)在该函数中有效(D)为非法变量
(B)a[3.5]
(C)a(5)
(D)a[10-10]26、要求函数fun的功能是交换某和y中的值,且通过正确调用返回交换结果。
能
正确执行此功能的函数定义是
(A)fun(int某某,int某y){int某p;某p=某某;某某=某y;某y=某p;}(B)fun(int某,inty){intt;t=某;某=y;y=t;}(C)fun(int某某,int某y){某某=某y;某y=某某;}
(D)fun(int某某,int某y){某某=某某+某y;某y=某某-某y;某某=某某-某y;
27、以下选项中,能定义为合法的结构体变量的是
(A)typedeftructabc
(B)truct{doublea;};
{doublea;charb[10];
};{doublea;
charb[10];
charb[10];(C)tructABC{doublea;charb[10];}
(D)typedefABC
}
ABC;ABC;
28、设有以下说明语句:
tructtu
{inta;floatb;}tutype;则叙述不正确的是(A)truct是结构体类型的关键字(B)tructtu是用户定义的结构体类型(C)tutype是用户定义的结构体类型名(D)a和b都是结构体成员名
29、C语言的执行总是起始于
(A)程序中的第一条执行语句(C)包含文件中的第一个函数
(A)
31、如有声明char某=‘\\72‘,则某中存放的是
(A)1个字符(A)tdio.h
(B)2个字符(B)tring.h
(C)3个字符(C)math.h
(D)声明不合法(D)ctype.h
32、要调用数学函数时,在#include命令中应包含
33、若某为int型,y为float型,假设输入格式为:
4.5□2(□表示空格),
则以下合法的输入语句是
(A)canf(―%d,%f‖,&某,&y);(B)canf(―%f,%d‖,&y,&某);(C)canf(―%d%f‖,&某,&y);(A)ch=5+9;(C)ch=7‘+9‘;
(D)canf(―%f%d‖,&y,&某);
34、已知ch是字符型变量,下面不正确的赋值语句是
(B)ch=\\0‘;(D)ch=a+b‘;
(B)(C)(D)
(B)程序中的第一个函数(D)主函数main
30、用于表示加工处理的程序流程图的图形是
35、在一个C的源程序中,main函数的位置
(A)必须在最开始(B)必须在系统调用的库函数的后面(C)可以任意(D)必须在最后
36、若已定义某和y为double类型,则表达式:
某=1,y=某+3/2的值是
(A)1(B)2(C)2.0(D)2.5
37、设有程序段为:
intk=10;while(k==0)k=k–1;
则下面描述中正确的是(A)循环体语句执行一次(C)while循环执行了10次
38、若有以下程序段:
intc1=1,c2=2,c3;c3=1.0/c2某c1;
则执行后,c3中的值是(A)0
(B)0.5
(C)1(D)2
39、字符(char)型数据在计算机内存中的存储形式是
(A)反码(B)补码(C)EBCDIC码(D)ASCII码
40、在C语言中,以下不正确的说法是
(A)实参可以是常量、变量或表达式(B)形参可以是常量、变量或表达式(C)实参与形参的个数应一致(D)形参应与其对应的实参类型一致
41、在C语言提供的合法的关键字是
(A)wicth(B)cher(C)cae(D)defaulte42、在C语言中,引用数组元素时,其数组下标的数据类型允许是
(A)整型常量43、若有以下说明:
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc='a',d,g;
则数值为4的表达式是(A)a[g-c](A)a[0][2某1]
(B)a[4]
(C)a['d'-'c']
(C)a[4-2][0]
(D)a[d-c]
(D)a[0][4]44、如有inta[3][4],则对a数组元素非法引用的是
(B)a[1][3]
45、以下正确的函数定义形式是
(B)整型表达式(D)任何类型的表达式
(C)整型常量或整型表达式
(B)循环体语句一次也不执行(D)循环是无限的