2022年湖北专升本C语言数据类型、运算符与表达式模拟题
一、单项选择题
1.下面四个选项中,均不是 c 语言关键字的选项是( A )。
A) define IF Type
B) getc char printf
C) include scanfcase
D) while go pow
2.C 语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( C )。
A) 必须为字母
B) 必须为下划线
C) 必须为字母或下划线
D) 可以是字母、数字和下划线中任一种字符
3.下列四个选项中,均是 C 语言关键字的选项是( B)。
A) auto enum include
B) switchtypedefcontinue
C) signed unionscanf
D) ifstructtype
4.下面四个选项中,均是不合法的用户标识符的选项是( C )。
A) AP_0do
B) floatla0_A
C) b-agotoint
D) _123tempint
5.以下有 4 组用户标识符,其中合法的一组是( C)。
A) For-subCase
B) 4dDOSize
C) f2_G3IFabc
D) WORDvoiddefine
6.下列选项中,合法的 C 语言关键字是( D )。
A) VAR
B) cher
C) integer
D) default
7.下面四个选项中,均是合法整型常量的选项是( A)。
A) 160-0xffff011
B) -0xcdf01a0xe
C) –019860120668
D) -0x48a 0x2e50xe
8.下面四个选项中,均是正确的八进制数或十六进制数的选项是( C)。
A) -100x8f-011
B) 0abc-0170xc
C) 010-0x11 0xf1
D) 0a12-0x123-0xa
9.设 C 语言中,一个 int 型数据在内存中占 2 个字节,则 unsigned int 型数据的取值范围为( C)。
A) 0~255
B) 0~32767 C) 0~65535 D) 0~2147483647
10.在 C 语言中,不正确的 int 类型的常数是( A )。
A)32768 B)0 C)037 D)0xAF (11101111=128+64+32+8+4+2+1)
11.下面四个选项中,均是不合法的整型常量的选项是( D)。
A) -0f1-0xffff0011
B) -0xcdf01712456
C) -0189995e2
D) -0x48eg-06803f
12.下面四个选项中,均是不合法的浮点数的选项是( B )。
A) 160.0.12e3
B) 1232e4.2.e5
C) -.18123e40.0
D) -e3.2341e3
13.下面四个选项中,均是合法的浮点数的选项是( B)。
A) +1e+15e-9.403e2
B) -.6012e-4-8e5
C) 123e1.2e-.4+2e-1
D) -e3.8e-45.e-0
14.下列变量定义中合法的是( A)。
A) short _a=1-.le-1;
B) double b=1+5e2.5;
C) long do=0xfdaL;
D) float 2_and=1-e-3;
15. 以下选项中合法的字符常量是( B)。
A) “B”
B)‘\010’
C) 68
D) D
16.以下选项中,非法的字符常量是( C )。
A) '\t'
B) '\17'
C) "n"
D) '\xaa'
17.以下所列的 C 语言常量中,错误的是( B )。
A) 0xFF
B) 1.2e0.5
C) 2L
D)‘\72’
18.在 C 语言中,char 型数据在内存中的存储形式是(D)。
A) 补码
B) 反码
C) 原码
D) ASCII 码
19.下面四个选项中,均是合法转义字符的选项是( A )。
A)‘\’’‘\\’‘\n’
B)‘\’‘\017’‘\”’
C)‘\018’‘\f’‘xab’
D)‘\\0’‘\101’‘xlf’
20.下面四个选项中,均是不合法的转义字符的选项是( B)。
A)‘\””’‘\\’‘\xf’
B)‘\1011’‘\’‘\a’
C)‘\011’‘\f’‘\}’
D)‘\abc’‘\101’‘xlf’
21.下面正确的字符常量是( C)。
A) “c”
B)‘\\’’
C)‘W’
D)‘’
22.下面四个选项中,均是正确的数值常量或字符常量的选项是(D)。
A) 0.00f8.9e‘&’
B)‘a’3.9e-2.51e1‘\’’
C)‘3’ 011 0xff00 0a
D) +0010xabcd2e250.
23.下面不正确的字符串常量是( A)
A)‘abc’
B) ”1212”
C) ”0”
D) ” ”
24.在 C 语言中(以 16 位 PC 机为例),5 种基本数据类型的存储空间长度的排列顺序为( A )。
A) char B) char=int C) char D) char=int=long int<=float 25.若有说明语句:char c='\72';则变量 c( A )。 A) 包含 1 个字符 B) 包含 2 个字符 C) 包含 3 个字符 D) 说明不合法,c 的值不确定 26.设变量 a 是整型,f 是实型,i 是双精度型,则表达式 10+a+i*f 值的数据类型为( C )。 A) int B) float C) double D) 不确定 27.表达式 18/4*sqrt(4.0)/8 值的数据类型为( C )。 A) int B) float C) double D) 不确定 28.设有说明:char w; int x; float y; double z; 则表达式 w*x+z-y 值的数据类型为( D )。 A) float B) char C) int D) double 29.以下选项中属于 C 语言的数据类型是( C)。 A) 复数型 B) 逻辑型 双精度型 D) 集合型 30.以下程序的输出结果是(A) main() { char c=‘z'; printf(“%c”,c-25); } A) a B) Z C) z-25 D) y 31.若有定义:int a=7; float x=2.5,y=4.7; 则表达式 x+a%3*(int)(x+y)%2/4 的值是( A)。 A) 2.500000 B) 2.750000 C) 3.500000 D) 0.000000 32.若有代数式 3ae/bc,则不正确的 c 语言表达式是( C)。 A) a/b/c*e*3 B) 3*a*e/b/c C) 3*a*e/b*c D) a*e/c/b*3 33.设有 int x=11; 则表达式 (x++ * 1/3) 的值是( A)。 A) 3 B) 4 C) 11 D) 12 34.以下变量 x.、y、z 均为 double 类型且已正确赋值,不能正确表示数学式子 x/yz 的 C 语言表达式是( A )。 A) x/y*z B) x*(1/(y*z)) C) x/y*1/z D) x/y/z 35.C 语言中运算对象必须是整型的运算符是( A)。 A) %= B) / C) = D) <= 36.下列程序的输出结果是( C)。 main() { double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf("%d\n", d*y); } A) 3 B) 3.2 C) 0 D) 3.07 37.若 x,i,j 和 k 都是 int 型变量,则计算下面表达式 x=(i=4, j=16, k=32) 后,x 的值为( C )。 A) 4 B) 16 C) 32 D) 52 38.假设所有变量均为整型,则表达式(a=2, b=5, b++, a+b)的值是( B)。 A) 7 B) 8 C) 6 D) 2 39.假定 x 和 y 为 double 型,则表达式 x=2, y=x+3/2 的值是( D)。 A) 3.500000 B) 3 C) 2.000000 D) 3.000000 40.若以下变量均是整型,且 num=sum=7;则计算表达式 sum=num++, sum++, ++num 后 sum 的值为( B)。 A) 7 B) 8 C) 9 D) 10 41.若有定义 int k=7,x=12; ,则以下能使值为 3 的表达式是( D)。 A) x%=(k%=5) B) x%=(k-k%5) C) x%=k-k%5 D) (x%=k)-(k%=5) 42.设以下变量均为 int 类型,则值不等于 7 的表达式是( C )。 A) (x=y=6,x+y,x+1) B) (x=y=6,x+y,y+1) C) (x=6,x+1,y=6,x+y) D) (y=6,y+1,x=y,x+1) 43.下列程序执行后的输出结果是( A)。 main() {int x=‘f’; printf(“%c\n”,‘A’+(x-‘a’+1));} A) G B) H C) I D) J 44.下列程序执行后的输出结果是( C )。 main() { char x=0xFFFF; printf("%d \n",x--); } A) –32767 B) FFFE C) -1 D) –32768 45.以下程序的输出结果是( D )。 main() { int a=3; printf("%d\n",(a+=a-=a*a));} A) -6 B) 12 C) 0 D) –12 46.若变量已正确定义并赋值,下面符合 C 语言语法的表达式是( B)。 A) a:=b+1 B) a=b=c+2 C) int 18.5%3 D) a=a+7=c+b 47.若有以下程序段, int c1=1, c2=2, c3; c3=1.0/c2*c1; 则执行后,c3 中的值是( A )。 A) 0 B) 0.5 C) 1 D) 2 48.有如下程序 main( ) { int y=3, x=3, z=1; printf(“%d %d\n”, (++x, y++), z+2); } 运行该程序的输出结果是( D )。 A) 3 4 B) 4 2 C) 4 3 D) 3 3 49.已知大写字母 A 的 ASCII 码为 65,以下程序的运行结果为( A)。 #include main( ) { char c1=‘A’,c2=‘Y’; printf(“%d,%d\n”,c1,c2); } A) 65,89 B) A,Y C) 65,88 D) 65,90 50.以下程序的输出结果是( D )。 #include main() { int a=010,b=10; printf(“%d,%d\n”,a++,--b); } A) 10,10 B) 8,10 C) 10,9 D) 8,9 51.以下程序的输出结果是( B )。 main() { int a,b; a=100;b=200; printf(“%d\n”,(a,b)); } A) 100 B) 200 C) 20000 D) 100=200 52.执行语句 y=10;x=y++; 的结果是( C )。 A) x=10,y=10 B) x=11,y=11 C) x=10,y=11 D) x=11,y=10 53.在表示 C 语言的整型变量时,表示“无符号长整型”的符号是( D)。 A) unsigned int B) unsigned short C) long int D) unsigned long 54.在下列形式的常数中,C 程序不允许出现的是( B )。 A) .45 B) ±123 C) 25.6e-2 D) 4e3 55.以下程序的输出结果是(C)。 main() { float x=3.6; int i; i=(int)x; printf(“x=%f,i=%d”,x,i); } A) x=3.600000,i=4 B) x=3,i=3 C) x=3.600000,i=3 D) x=3.000000,i=3.600000 56.在 C 语言中,要求运算数必须是整型数据的运算符是(B)。 A) / B) % C) ! D) < 57.执行下列语句的结果是( D)。 i=3; printf(“%d,”,++i); printf(“%d”,i++); A) 3,3 B) 3,4 C) 4,3 D) 4,4 58.已知 x=3, y=2,则表达式 x*=y+8 的值为( C)。 A) 3 B) 2 C) 30 D) 14 59.执行语句 int i=65536; printf(“%d\n”,i); 的结果是( B)。 A) 65536 B) 0 C) 有语法错误,无输出结果 D) -1 60.在 C 语言中,不正确的 int 类型的常数是(A)。 A) 32768 B) 0 C) 037 D) 0xAF 61.C 语言提供的合法关键字是( D )。 A) swicth B) chan C) Case D) default 62.表示“在使用 x 之前,先使 x 的值加 1”的正确方式是( A)。 A) ++x B) x++ C) +x D) +x+ 63.设 x 的值为 5,则表达式(++x)+(++x)+(++x)的值是( D )。 A) 24 B) 20 C) 15 D) 21 64.在 C 语言中,合法的字符常量是( B )。 A)‘\084’ B)‘\x43’(十六进制) C)‘ab’ D) “\0” 65.若已定义 x 和 y 为 double 类型,则表达式:x=1, y=x+3/2 的值是( C )。 A) 1 B) 2 C) 2.0 D) 2.6 66.若 t 为 double 类型,表达式 t=1, t+5, t++的值是( D)。 A) 1 B) 6.0 C) 2.0 D) 1.0 67.若有以下定义和语句,则输出结果是( B )。 char c1=‘b’,c2=‘e’; printf(“%d,%c\n”,c2-c1,c2-’a’+’A’); A) 2,M B) 3,E C) 2,E D) 输出项与对应的格式控制不一致,输出结果不确定 68.设有如下的变量定义: int i=8,a,b; double x=1.42,y=5.2; 则以下符合 C 语言语法的表达式是(A)。 A) a+=a-=(b=4)*(a=3) B) x%(-3) C) a=a*3=2 D) y=float(i) 69.若有以下定义和语句: int u=010,v=0x10,w=10; printf(“%d,%d,%d\n”,u,v,w);() 则输出结果是(A)。 A) 8,16,10 B) 10,10,10 C) 8,8,10 D) 8,10,10 二、填空题 1.若 x 和 a 均是 int 型变量,则计算表达式(1)后的 x 值为12,计算表达式(2)后的 x 值为 4。 (1) x=(a=4, 6*2) (2) x=a=4, 6*2 2.若 a 是 int 型变量,则表达式(a=4*5, a*2), a+6 的值为26。 3.若 b 是 int 型变量,则表达式 b=25/3%3 的值为2。 4.若 s 是 int 型变量,且 s=6 则下面表达式 s%2+(s+1)%2 的值为1。 5.若 a,b 和 c 均是 int 型变量,则计算表达式 a=(b=4)+(c=2)后,a 值为6,b 值为 4,c值为2。 6.若 x 和 n 均是 int 型变量,且 x 和 n 的初值均为 5,则计算表达式 x+=n++后 x 的值为10,n 的值为6。 7.若有定义:int b=7;float a=2.5,c=4.7;则表达式 a+(int)(b/3*(int)(a+c)/2)%4 的值为 5.5。 8 . 若有定义 : int a=2,b=3;float x=3.5,y=2.5; 则 表 达 式 (float)(a+b)/2+(int)x%(int)y 的 值为3.5。 9.若有定义:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b 的值为1。 10.若 x 和 n 均是整型变量,且 x 的初值为 12,n 的初值为 5,则计算表达式 x%=(n%=2)后 x 的值为0。 11.以下程序的输出结果是0。 main() { unsigned short a=65536; int b; printf(“%d\n”,b=a);} 12.请写出数学式 a/bc 的 C 语言表达式a/(b*c)。 13.设 a、b、c 为整型数,且 a=2、b=3、c=4,则执行完语句 a*=16+(b++)-(++c)后,a 的值是28。 以上就是关于2022年湖北专升本C语言数据类型、运算符与表达式模拟题的全部内容了,如果你还有专升本相关的疑惑(如专升本报名、考试动态、院校招生简章、统考动态、湖南专升本院校、历年真题、考试大纲、专升本等相关信息),可以在文章下方留下你的联系方式,老师会第一时间联系到你,为你答疑解惑哦! 部分内容来源于网络转载、学生投稿,如有侵权或对本站有任何意见、建议或者投诉,请联系邮箱(1296178999@qq.com)反馈。
未经本站授权,不得转载、摘编、复制或者建立镜像, 如有违反,本站将追究法律责任!