第二章 基本语法规则
2.1数据类型、运算符、表达式
一、选择题
1.C语言中确定数据存储的格式、范围与有效位数的依据是
A.数据正负        B.数据范围        C.数据类型        D.数据大小
2.一般说在C语言中字符型数据、整型数据、单精度浮点型及双精度浮点型数据的存储长度分别为
A2481                    B4218       
C1248                    D1428
3.转义字符“\t”表示
A.横向跳格,即跳到下一个输出区            B.竖向跳格           
C.退格                                    D.换行
4.以下叙述不正确的是
A.C语言中的常量分别为整型常量、浮点常量、字符常量、符号常量
B.整型常量在C语言中有十进制、八进制和十六进制等3种不同形式
C.C语言中,变量必须先定义后使用
D.变量被定义后,变量名是固定的,变量的值在程序运行过程中是不可以随时被改变的
5.以下叙述不正确的是
A.C语言中的字符常量是用一对单引号('  ')括起来的单个字符
B.字符串常量是用一对双引号(“ “)括起来的字符序列
C.字符型数据与整型数据之间不可以通用。
D.为了便于判断字符串是否结束,系统会自动在最后一个字符后面加上一个转义字符(‘\0’)
6.在赋值语句中用来将运算表达式的值赋给变量的“=”称为
A.等号                        B.赋值运算符       
C.关系运算符                D.逻辑运算符
7.设a=12n=3,则执行表达式a%=n+3a的值为
A3            B0            C6            D12
8.设,A=0B=1表达式!A&&B的值是
A1            B0            C2            D3
9.在16PC机环境下,字符串“A”应占的字节数为
A2            B1            C0            D4
10.采用十进制数为表示方法,则077
A77            B112            C63            D119
11.设xfloat型变量,ydouble型变量,aint型变量,blong型变量,cchar型变量,则表达式x+y*a/x+b/y+c计算结果的类型为
Aint            Blong            Cdouble        Dchar
12.设a,cint型变量,进行a=(c=5,c+5,c/2)运算后的结果为
A2            B5            C2.5            D0
13.在C语言中,表示逻辑的值分别是
A01            B12            C10            D21
14C语言中表示a小于b或小于c的表达式为
Aa<b<c                    Ba<b||b<c           
Ca<b||a<c                    Da<b&&a<c
15C语言中表示ab都大于c的表达式为
Aa>c&&b>c                Ba>c||b>c           
Ca>b||b>c                    Da>b&&b>c
16ab中有一个小于c的表达式为
Aa<c||b<c                    Ba<c&&b<c           
Ca<b||b<c                    Da<b&&b<c
17.若有a=2,b=3,c=4,则表达式a= =3和a=3的值分别为
A00        B13        C33        D03
18.表达式!(1<3)||(2>5)!(4<=8)&&(7>=3)的值分别为
A10        B00        C01        D11
*19.设a=4,计算表达式a=1,a+5,a++的值为
A1            B5            C10            D2
20.设x=4,y=8,计算表达式y=(x++)*(--y)的值为
A28            B32            C40            D35
21设有语句char a=`\72`;则变量包含的字符数为
A.3            B. 2个            C1            D.4
22设有说明语句:char a= '\123abc';则变量a包含的字符数为
A.4            B.6            C.5            D.7
23.下列叙述正确的是
A.赋值语句中的“=”是表示左边变量等于右边表达式
B.赋值语句中左边的变量值不一定等于右边表达式的值
C.赋值语句是由赋值表达式加上分号构成的
Dx+=y;不是赋值语句
24.下列选项中,可以作为C语言标识符的是
A3stu            B#stu            Cstu3            Dstu3
25.下列选项中,不可以作为C语言标识符的是
Anum          Bturbo_c            Cprint            Dstudent3
26.下列选项中,不可以作为C语言常量的是
A”abc”                B1/2            C‘M’            D13.8e   
27.下列选项中,正确的一组语句是
Achar a;            Bchar b;        Cchar c;        Dchar d
        a=’M’;          b=’55’;          c=”M”;          d=”55”
28.已知字母’b’ASCII码值为98,如ch为字符型变量,则表达式ch=’b’+’5’-‘2’的值为
Ae                Bd            C102            D100
29.下列不是字符串常量的是
A“1818"            B“aads”        C_abdc        D“a”
30.在C语言中,intcharshort三种类型数据所占用的内存是
A.均为2个字节                B.由用户定义       
C.是任意的                    D.由所用机器的机器字长决定
31.设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是
A0255                    B065535       
C-3276832767            D-256255
32.以下是不正确的转义字符是
A‘\\’            B‘\’’            C‘\081’            D‘\0’
33.在C语言中,char型数据在内存中的存储形式是
A.原码            B.补码            CASCII            D.反码
*34.若xunsigned int变量,则执行以下语句后的x值为。
x=65535;printf(“%dn”,x);
A65535            B1        C-1                D.无定值
35ex+SIN(x2)/(2a)的算法语言表达式是
Aex+sin(x*x)/(2*a)            Bexp(x)+sin(x*x)/(2*a)
Cex+sin(x*x)/2*a            DEXP(X)+SIN(X*X)/(2*A)
36.设xy均为int型变量,则执行以下语句后的输出为
x=15;y=5;printf(“%dn”,x%=(y%2));
A0            B1            C6            D12
37.设i=5;执行i*=i++;后,i的值为。
A25            B26            C5            D6
38.设a的值为12,则执行表达式a+=a-=aa的值为
A0            B12            C10            D24
39.若xint型变量,则执行x=6;        x+=x-=x*x; 语句后,x的值为
A36            B-60            C60            D-24
40.若有说明语句int i,j;i的值为6,则执行语句j=(++i)+(i++);后j的值是
A4            B14            C13            D15
41.关系运算中用来表示等于、不等于、小于的符号分别为
A=,=<            B==,=<        C=,<>,<        D= =,!=,<
42.设a=2,  b=7.5,  c=-3.6,以下哪两个逻辑表达式的值相同
A1) ‘a’>‘c’||‘x’<‘y’                2) b-a<=c/2&&c=-3.6
B1) ‘a’>‘c’&&‘x’<‘y’                2) a-7<b-65
C1) ‘a’>‘c’||‘x’>‘y’                2)‘a’<‘c’&&a>b
D1) ‘a’>‘c’&&‘x’>‘y’            2)‘a’<‘c’||a>c
43.逻辑运算中的非、与、或的运算次序是
A&&,||,!        B&&,!||        C!,||,&&        D!,&&,||
44.若w=1,x=2,y=3,z=4,则条件表达式w<x?w:y<z? y:z的结果为。
A4            B3            C2            D1
*45.表达式0x08>>2的值为
A2            B8            C1            D4
*46.定义:int x=5,y=1;表达式x&y==y?x|y:xy的值为。
A1            B0            C4            D5
47.若有定义:int a=10,b=9,c=8;执行下面两条语句c=(a-=(b-5));c=(a%11)+(b=3);后,变量b的值为
A.9            B.4            C3            D.2
48.设x,y,z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为
A.52            B32            C.16            D.4
49.使条件表达式(year%4==0&&year%100!=0)||(year%400==0)结果为假的值是
A1950            B.2000            C.1996            D.2004   
50.已知int i=1,j;执行语句j=-i++;后,i 和j的值分别为
A.1,1            B.1,-1        C2,-1        D.2,-2
二、阅读程序,写出程序的运行结果。
1    main( )
{    char c1=’6’,c2=’0’;
printf(“%c,%c,%d\n”,c1,c2,c1-c2);
}
A.因程序格式不合法,提示出错信息。            B606
C607                                    D605
2    main( )
{    int x=010,y=10,z=0x10;
printf(“%d,%d,%d\n”,x,y,z);
}
A8,10,16        B.8,10,10        C.10,10,10        D.10,10,16
3.    main()
{    int  a,b,c;
a=b=c=1;
          b=b+c;
          a=a+b;
        printf(“%d\n”,(c<b)?b:a);
        }
A3            B1            C2            D4
4    #include <stdioh>
main()
{    int x=1,y=1,z=1;
y=y+z;
x=x+y;
z=x<y?y:x;
printf (“%dn”,z>=y&&y>=x);
}switch case判断字符串
A0            B1            C3            D2
5    #include <stdioh>
#include <mathh>
main()
{    int a=1, b=4, c=2;
float x=5.5, y=9.0, z;
z=(a+b)/c+sqrt((double)y)*1.2/c+x;
printf(“%fn”,z);
}
A9.300000        B9.800000        C12.900000        D8.500000
6main()
{    int  x=3; y=z=4;
        printf( “%d\n”, z>=y>=x);
}
A3            B4            C1            D0
7.main()
    {  int p=30;
        printf("%d\n",(p/3>0 ? p/10:p%3));
    }
A10            B1            C3            D0
8.#include"stdio.h"
  main( )
    {    int a,b,d=241;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。