1、C语言习题带答案练习1-1答案选择题1下列4组字符串中都可以用作C语言程序中的标识符的是( D )。Aprint 3d oodb BIm one_half start$itCPxq mybook line# Dstr_1 Cpp into2下面的说法正确的是( C )。AC程序由符号构成 BC程序由标识符构成CC程序由函数构成 DC程序由C语句构成3与十进制数35相等的二进制数是( A )。A100011 B01001 C100110 D1001014与47值相等的十六进制数是( A )。A2F B215 C32F D1155(01101)2 + (101101)2的值是( B )。A(101
2、010)2 B(3A)16 C(2A)16 D576将15向左移动2位后的值是( D )。A(3C)16 B(00111100)2 C(60)10 D都正确7将250与5进行按位与的结果是( A )。A0 B1 C(FF)16 D(F0)168将(AF)16与(78)16进行按位异或的结果是( A )。A(D7)16 B(28)16 C(D8)16 D(27)169将(717)8按位取反的结果是( B )。A(110001)2 B(060)8 C(60)10 D都不正确练习2-1答案选择题1C语言中的简单数据类型包括( B )。A整型、实型、逻辑型 B整型、实型、字符型C整型、字符型、逻辑型
3、D整型、实型、逻辑型、字符型2在C语言中,错误的int类型的常数是( A )。A32768 B0 C037 D0Xaf3下列常数中不能作为C的常量的是( D )。A0x45 B-2 C3e2 D05824设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是( B )。A0至255 B065535 C-3276832767 D-2562555下面4个选项中,均是合法转义字符的选项是( A )。A,n B,017,C018,f,xab D0,101,x1f6在C语言中,数字029是一个( D )。A八进制数 B十六进制数 C.十进制数 D非法数7下列可以正确表示字符型常
4、数的是( B )。Aa Bt Cn D2978以下( C )是错误的转义字符。A B C81 D09C语言中整数-8在内存中的存储形式是( A )。A1111 1111 1111 1000 B 1000C000000000000 1000 D1111 1111 1111 011110将字符g赋给字符变量c,正确的表达式是( C )。Ac=g Bc=101 Cc=147 Dc=014711字符串22a,0n的长度是( C )。A8 B7 C6 D512为求出s=10!的值,则变量s的类型应当为( D )。Aint Bunsigned Clong D以上三种类型均可13已知:unsigned in
5、t x=65535;,则执行以下语句输出是( D )。printf(%dn, x);A65535 B1 C无定值 D-114下面4个选项中,均是合法整型常量的选项是( A )。A160,-0xffff,011 B-0xcdf,01a,0xeC-01,986,012,0668 D-0x48a,2e5,0x15下面4个选项中,均是不合法的整型常量的选项是( D )。A-0f1,-0xffff,0011 B-0Xcdf,01a,0xeC-018,999,5e2 D-0x48eg,-068,03f16下面4个选项中,均是合法浮点数的选项是( B )。A+1e+1,03e2 B,12e-4,-8e5C1
6、23e,+2e-1 D-e3,.8e-4, 练习2-2答案选择题1已知:char a; int b; float c; double d;,执行语句c=a+b+c+d;后,变量c的数据类型是( C )。Aint Bchar Cfloat Ddouble2已知int j, i=1;,执行语句j=-i+;后,j的值是( C )。A1 B2 C-1 D-23已知int i, a;,执行语句i=(a=2*3, a*5), a+6;后,变量i的值是( C )。A6 B12 C30 D364已知int i=5;,执行语句i+=+i;,i的值是( C )。A10 B11 C12 DA、B、C答案都不对5已知
7、:float x=1, y;,则表达式y=+x*+x的结果为( B )。A9 B6 C1 D表达式是错误的6已知:int y; float x=-3;,执行语句:y=x%2;,则变量y的结果是( D )。A. 1 B-1 C0 D语句本身是错误的7已知:char w; int x; float y; double z;,则表达式w*x+z-y结果的类型是( D )。Afloat Bchar Cint Ddouble8已知:int x=10, y=3, z;,则下列语句的输出结果是( D )。printf(%dn, z=(x%y, x/y);A1 B0 C4 D39已知:int i=6, j;,
8、则执行语句j=(+i)+(i+);后的j的值是( B )。A4 B14 C13 D1510已知:int x=1, y=-1;,则语句printf(%dn, (x-&+y);的输出结果是( B )。A1 B0 C-1 D211设a=2,b=3,计算表达式c=b*=a-1后,变量c的值是( B )。A5 B3 C2 D412若定义了int x;,则将x强制转化成双精度类型应该写成( A )。A(double)x Bx(double) Cdouble(x) D(x)double13下述程序的输出是( A )。main() int x=023; printf(%f, +1*7%2/4); A B2.7
9、50000 C D14若有定义:int a=7; float x=, y=;,则表达式x+a%3*(int)(x+y)%2/4的值是( A )。A B2.750000 C D15设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第3位进行四舍五入运算的表达式是( B )。An=(n*100+/ Bm=n*100+, n=m/Cn=n*100+ Dn=(n/100+*16已知ch是字符型变量,下面不正确的赋值语句是( A )。Ach=a+b; Bch=0; Cch=7+9; Dch=5+9;练习3-1答案一、选择题1在C语言库函数中,可以输出double型变量x
10、值的函数是( D )。Agetchar Bscanf Cputchar Dprintf2执行语句:printf(The programs name is c:tools);后输出是( D )。AThe programs name is c:tools BThe programs name is c:tools CThe programs name is c:tools DThe programs name is c:3以下程序的输出结果是( D )。(注:表示空格)main()printf(n*s1=%15s*, chinabeijing); printf(n*s2=%-5s*, chi);A
11、*s1=chinabeijing* B*s1=chinabeijing *s2=*chi* *s2=chi*C*s1=*chinabeijing* D*s1=*chinabeijing* *s2=chi* *s2=chi*4选择程序的运行结果,是( B )、是( B )、是( D )、是( C )。#includemain()int a=-10, b=-3; printf(%dn, a%b); /*输出*/ printf(%dn, a/b*b); /*输出*/ printf(%dn, -a%b); /*输出*/ printf(%dn, a-=b+1); /*输出*/ A-2 B-1 C0 D1
12、 A-10 B-9 C-8 D0 A-2 B-1 C0 D1 A-10 B-9 C-8 D-75以下C程序正确的运行结果是( D )。(注:表示空格)main()int y=2456; printf(y=%3on, y); printf(y=%8on, y); printf(y=%#8on, y);Ay=2456 By=4630 y=2456 y=4630 y=#2456 y=#4630Cy=2456 Dy=4630 y=2456 y=4630 y=02456 y=04630二、填空题6以下程序的输出结果为( i:dec=-4, otc=177774, hex=fffc, unsigned=65532 )。main()short i; i=-4; printf(ni:dec=%d, otc=%o, hex=%x, unsigned=%un, i, i, i, i);7以下程序的输出结果为( c:dec=120, oct=170, hex=78, ASCII=x )。main()char c=x; printf(c:dec=%d, oct=%o, hex=%x, ASCII=%c
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1