c语言试题Word文档下载推荐.docx
- 文档编号:22396176
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:11
- 大小:20.15KB
c语言试题Word文档下载推荐.docx
《c语言试题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c语言试题Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
A.原码B.反码C.ASCII码D.BCD码
4、若x、i、j和k都是int型变量,则计算下面表达式后,x的值是(C)。
x=(i=4,j=16,k=32)
A.4B.16C.32D.52
5、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B)。
A.算术运算、赋值运算、关系运算B.算术运算、关系运算、赋值运算
C.关系运算、赋值运算、算术运算D.关系运算、算术运算、赋值运算
6、若有代数式,则不正确的C语言表达式是(C)。
A.a/b/c*e*3B.3*a*e/b/cC.3*a*e/b*cD.a*e/c/b*3
7、表达式!
x||a==b等效于(D)。
A.!
((x||a)==b)B.!
(x||y)==bC.!
(x||(a==b))D.(!
x)||(a==b)
8、设整型变量m,n,a,b,c,d均为1,执行(m=a>
b)&
&
(n=c>
d)后,m,n的值是(A)。
A.0,0B.0,1C.1,0D.1,1
9、设有语句inta=3;
,则执行了语句a+=a-=a*=a;
后,变量a的值是(B)。
A.3B.0C.9D.-12
10、在以下一组运算符中,优先级最低的运算符是(D)。
A.*B.!
=C.+D.=
11、设整型变量i值为2,表达式(++i)+(++i)+(++i)的结果是(B)。
A.6B.12C.15D.表达式出错
12、若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(C)。
A.1B.2C.2.0D.2.5
13、sizeof(double)的结果值是(A)。
A.8B.4C.2D.出错
14、设a=1,b=2,c=3,d=4,则表达式:
a<
b?
a:
c<
d?
d的结果为(D)。
A.4B.3C.2D.1
15、设a为整型变量,不能正确表达数学关系:
10<
15的C语言表达式是(A)。
A.10<
15B.a==11||a==12||a==13||a==14
C.a>
10&
a<
15D.!
(a<
=10)&
!
(a>
=15)
16、设f是实型变量,下列表达式中不是逗号表达式的是(D)。
A.f=3.2,1.0B.f>
0,f<
10C.f=2.0,f>
0D.f=(3.2,1.0)
17、表达式18/4*sqrt(4.0)/8值的数据类型是(C)。
A.intB.floatC.doubleD.不确定
18、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句
C2=’A’+’6’-‘3’;
后c2中的值是(A)。
A.DB.68C.不确定的值D.C
19、以下用户标识符中,合法的是(B)。
A.intB.nitC.123D.a+b
20、C语言中,要求运算对象只能为整数的运算符是(%)。
21、若有说明语句:
charc='
\72'
;
则变量c在内存占用的字节数是(A)。
A.1B.2C.3D.4
22、字符串"
ABC"
在内存占用的字节数是(B)。
A.3B.4C.6D.8
23、要为字符型变量a赋初值,下列语句中哪一个是正确的(B)。
A.chara="
3"
;
B.chara=’3’;
C.chara=%;
D.chara=*;
24、下列不正确的转义字符是(C)。
A.\\B.\'
C.074D.\0
二、填空题:
1、C语言中的逻辑值“真”是用1表示的,逻辑值“假”是用0表示的。
2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为0。
3、设c='
w'
a=1,b=2,d=-5,则表达式'
x'
+1>
c,'
y'
!
=c+2,-a-5*b<
=d+1,b==a=2的值分别为1、0、1、1。
4、设floatx=2.5,y=4.7;
inta=7;
,表达式x+a%3*(int)(x+y)%2/4的值为2.5。
5、判断变量a、b的值均不为0的逻辑表达式为a!
=0&
b!
=0。
6、求解赋值表达式a=(b=10)%(c=6),表达式值、a、b、c的值依次为4,4,10,6。
7、求解逗号表达式x=a=3,6*a后,表达式值、x、a的值依次为18,3,3。
8、数学式a/(b*c)的C语言表达式a/b/c。
第7章数组习题
1.单项选择题
(1)inta[4]={5,3,8,9};
其中a[3]的值为()。
D
A.5B.3C.8D.9
(2)以下4个字符串函数中,()所在的头文件与其他3个不同。
A
A.getsB.strcpyC.strlenD.strcmp
(3)以下4个数组定义中,()是错误的。
D
A.inta[7];
B.#defineN5longb[N];
C.charc[5];
D.intn,d[n];
(4)对字符数组进行初始化,()形式是错误。
B
A.charc1[]={'
1'
'
2'
3'
};
B.charc2[]=123;
C.charc3[]={'
\0'
D.charc4[]="
123"
(5)在数组中,数组名表示()。
A
A.数组第1个元素的首地址B.数组第2个元素的首地址
C.数组所有元素的首地址D.数组最后1个元素的首地址
(6)若有以下数组说明,则数值最小的和最大的元素下标分别是()。
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
A.1,12B.0,11C.1,11D.0,12
(7)若有以下说明,则数值为4的表达式是()。
charc=’a’,d,g;
A.a[g-c]B.a[4]C.a['
d'
-'
c'
]D.a['
-c]
(8)设有定义:
chars[12]="
string"
;
则printf("
%d\n"
strlen(s));
的输出是()。
A.6B.7C.11D.12
(9)设有定义:
则printf("
%d\n"
sizeof(s));
(10)合法的数组定义是()。
A.chara[]="
string"
B.inta[5]={0,1,2,3,4,5};
C.chara="
D.chara[]={0,1,2,3,4,5}
(11)合法的数组定义是()。
A.inta[3][]={0,1,2,3,4,5};
B.inta[][3]={0,1,2,3,4};
C.inta[2][3]={0,1,2,3,4,5,6};
D.inta[2][3]={0,1,2,3,4,5,};
(12)下列语句中,正确的是()。
A.chara[3][]={'
abc'
B.chara[][3]={'
C.chara[3][]={'
"
1"
D.chara[][3]={"
(13)下列定义的字符数组中,输出printf("
%s\n"
str[2]);
的输出是()。
C
staticstr[3][20]={"
basic"
foxpro"
windows"
A.basicB.foxproC.windowsD.输出语句出错
(14)下列各语句定义了数组,其中哪一个是不正确的()。
A.chara[3][10]={"
China"
"
American"
Asia"
B.intx[2][2]={1,2,3,4};
C.floatx[2][]={1,2,4,6,8,10};
D.intm[][3]={1,2,3,4,5,6};
(15)数组定义为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]
(17)下面哪一项是不正确的字符串赋值或赋初值的方式()。
A.char*str;
str="
B.charstr[7]={'
s'
'
t'
r'
i'
n'
g'
C.charstr1[10];
str1="
D.charstr1[]="
str2[]="
12345678"
(19)若有以下说明和语句,则输出结果是()。
B
(strlen(s)为求字符串s的长度的函数)
charsp[]="
\t\v\\\0will\n"
printf("
%d"
strlen(sp));
第8章函数习题
(1)C语言总是从函数开始执行。
A.mainB.处于最前的C.处于最后的D.随机选一个
(2)函数在定义时,省略函数类型说明符,则该函数值的类型为。
A.intB.floatC.longD.double
(2)以下函数,真正地没有返回值。
A.inta(){inta=2;
return(a);
}B.voidb(){printf("
c"
);
}
C.inta(){inta=2;
returna;
}D.以上都是
(3)在C语言中,有关函数的说法,以下正确的是。
A.函数可嵌套定义,也可嵌套调用B.函数可嵌套定义,但不可嵌套调用
C.函数不可嵌套定义,但可嵌套调用D.函数不可嵌套定义,也不可嵌套调用
(4)以下函数调用语句中,含有实参的个数为。
C
fun((2,3),(4,5+6,7));
A.1B.2C.5D.6
(5)函数调用可以在。
A.函数表达式中B.函数语句中C.函数参数中D.以上都是
(6)被调函数返回给主调函数的值称为。
A.形参B.实参C.返回值D.参数
(7),可以不进行函数类型说明。
A.被调函数的返回值是整型或字符型时B.被调函数的定义在主调函数定义之前时
C.在所有函数定义前,已在函数外预先说明了被调函数类型D.以上都是
(8)被调函数通过语句,将值返回给主调函数。
A.ifB.forC.whileD.return
(9)被调函数调用结束后,返回到。
A.主调函数中该被调函数调用语句处B.主函数中该被调函数调用语句处
C.主调函数中该被调函数调用语句的前一语句D.主调函数中该被调函数调用语句的后一语句
(10)以下对C语言函数的有关描述中,正确的是。
A
A.在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
B.C函数既可以嵌套定义又可递归调用
C.函数必须有返回值,否则不能使用函数
D.C程序中有调用关系的所有函数必须放在同一个源程序文件中
(11)C语言中函数的隐含存储类型是。
A.autoB.staticC.externD.无存储类型
(12)能把函数处理结果的两个数据返回给主调函数,在下面的方法中不正确的是。
A.return这两个数B.形参用两个元素的数组
C.形参用两个这种数据类型的指针D.用两个全局变量
(13)C语言可执行程序从什么地方开始执行(程序中的main函数)
(14)有一个函数原型如下所示,则该函数的返回类型为()。
abc(floatx,floaty);
A.voidB.doubleC.intD.float
1、若有定义:
intx,*pb;
则以下正确的表达式是(A)
A、pb=&
xB、pb=xC、*pb=&
xD、*pb=*x
2、以下程序的输出结果是(B)
A、因变量无定义输出不定值B、0C、-1D、1
#include<
stdio.h>
voidmain()
{printf(“%d\n”,NULL);
}
3、以下程序的输出结果是(B)
A、5,2,3B、-5,-12,-7C、-5,-12,-17D、5,-2,-7
voidsub(intx,inty,int*z)
{*z=y-x;
{
inta,b,c;
sub(10,5,&
a);
sub(7,a,&
b);
sub(a,b,&
c);
printf(“%d,%d,%d\n”,a,b,c);
4、以下程序的输出结果是(C)
A、4B、6C、8D、10
intk=2,m=4,n=6;
int*pk=&
k,*pm=&
m,*p;
*(p=&
n)=*pk*(*pm);
printf(“%d\n”,n);
6、已知指针p的指向(图一)的a[1],则表达式*++p的值是(B)。
A、20B、30C、21D、31
7、已知指针p的指向(图一)的a[1],则表达式++*p的值是(C)。
8、以下程序的输出结果是(D)。
A、23B、24C、25D、26
voidprtv(int*x)
{printf(“%d\n”,++*x);
inta=25;
prtv(&
9、以下程序的输出结果是(B)。
A、运行出错B、100C、a的地址D、b的地址
int**k,*a,b=100;
a=&
b;
k=&
a;
printf(“%d\n”,**k);
10、以下程序运行后,输出结果是(D)。
A)8B)7C)6D)5
stdio,h>
ss(char*s)
{char*p=s;
while(*p)p++;
return(p-s);
main()
{char*a="
abded"
inti;
i=ss(a);
i);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 试题