《程序设计基础(C)》习题指导书
2.以下选项中不是C语句的是( )。
A.{int i;i++;printf(“%d\\n”,i);} B.; C.a=5,c=10 D.{ ;} 3.以下合法的C语言赋值语句是( )。 A.a=b=58 B.k=int(a+b); C.a=58,b=58 D.--i; 4.以下程序的输出结果是( )。
A.0 B.1 C.3 D.不确定的值
main()
{ int x=10,y=3; printf(“%d\\n”,y=x/y);}
5.若变量已正确说明为int类型,要给a、b、c输入数据,正确的输入语句是( )。 A.read(a,b,c); B.scanf(“%d%d%d”,a,b,c); C.scanf(“%D%D%D”,&a,&b,&c); D.scanf(“%d%d%d”,&a,&b,&c); 6.若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是( )。 A.a=a+b,b=a-b,a=a-b; B.t=a,a=b,b=t; C.a=t;t=b;b=a; D.t=b;b=a;a=t; 7.若变量已正确定义,以下程序段的输出结果是( )。 A.输出格式说明与输出项不匹配,输出无定值
B.5.1700 C.5.16800 D.5.16900
x=5.16894;printf(“%f\\n”,(int)(x*1000+0.5)/(float)1000); 8.执行以下程序段后,c3中的值是( )。
A.0 B.1/2 C.0.5 D.1
int c1=1,c2=2,c3;c3=c1/c2; 9.执行以下程序段后,其输出结果是( )。
A.0,0,-10 B.0,0,5 C.-10,3,-10 D.3,3,-10
int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf(“%d,%d,%d\\n”,a,b,c); 10.以下程序的输出结果是( )。
A.a=%2,b=%5 B.a=2,b=5 C.a=%%d,b=%%d D.a=%d,b=%d
main()
{ int a=2,b=5; printf(“a=%%d,b=%%d\\n”,a,b);} 11.若int型占两个字节,以下程序段的输出是( )。
A.-1,-1 B.-1,32767 C.-1,32768 D.-1,65535
int a=-1;printf(“%d,%u\\n”,a,a); 12.以下程序段的输出结果是( )。
A.|3.1415| B.| 3.0| C.| 3| D.| 3.|
float a=3.1415;printf(“|%6.0f|\\n”,a); 13.以下程序段的输出结果是( )。
A.9 8 B.8 9 C.6 6 D.以上三个都不对
#include
{ double a=-3.0,b=2; printf(“%3.0f %3.0f\\n”,pow(b,fabs(a)),pow(fabs(a),b));} 14.若a为整型变量,则以下语句( )。
A.赋值不合法 B.输出值为-2 C.输出为不确定值 D.输出值为2
a=-2L;printf(“%d\\n”,a); 15.若有定义char s=‘\\092’;则该语句( )。
A.使s的值包含1个字符 B.定义不合法,s的值不确定
第 6 页 共 64 页
《程序设计基础(C)》习题指导书
C.使s的值包含4个字符 D.使s的值包含3个字符
16.若k、g均为int型变量,则下列语句的输出为( )。 A.15 B.16 C.15 D.16 6f 70 71 6f
k=017;g=111;printf(“%d\\n”,++k);printf(“%x\\n”,g++); 17.已知字母a的ASCII十进制代码为97,执行下列语句后的输出为( )。 A.b,c B.a--运算不合法,故有语法错误
C.98,c D.格式描述和输出项不匹配,输出无定值
char a=‘a’;a--;printf(“%d,%c\\n”,a+‘2’-‘0’,a+‘3’-‘0’); 18.下列程序的输出为( )。
A.27.000000 B.27.500000 C.28.000000 D.28.500000
#include
{ int m=7,n=4; float a=38.4,b=6.4,x; x=m/2+n*a/b+1/2;printf(“%f\\n”,x); } 19.下列程序的输出结果是( )。
A.18 B.9 C.-18 D.-9
main() { int a=9;a+=a-=a+a;printf(“%d\\n”,a); } 20.下列程序的输出结果是( )。
A.0 B.5 C.1 D.不确定值
main() { int a=7,b=5;printf(“%d\\n”,b=b/a);} 21.下列程序的输出结果是( )。
A.12 B.11 C.10 D.9 main() { int a=011;printf(“%d\\n”,++a);}
23.下列是输出显示字符’a’的八进制ASCII码语句,正确的是( )。 A.printf(\.printf(\ C.printf(\D.printf(\
24.在scanf( )函数的格式说明符中,长整型数的输入格式说明符是( )。 A.%d B.%lf C.%ld D.%x
25.在printf()函数的格式说明符中,双精度浮点型的输出格式说明符是( )。 A.%ld B.%lf C.%c D.%s
26.将一个双精度浮点型常数12.345使用printf()函数输出显示在屏幕上,要求输出宽度为数值左边有2个空格符,小数点后面有4位数,正确的输出语句是( )。
A.printf(\.printf(\ C.printf(\.printf(\27.putchar函数可以向终端输出一个( )。
A.整型变量表达式的值 B.实型变量的值
C.字符串 D.字符或字符型变量的值 28.下列给出的分隔符中,错误的是( )。 A回车 B空格 C制表符 D双引号 29.以下选项不是C语句的是( )。
A.{int a;a++; printf(\.; C.{;} D.b=5
30.若变量已正确定义,要将a和b的数进行交换,下面不正确的语句是( )。 A.a=a+b,b=a-b,a=a-b; B.t=a,a=b,b=t; C.a=t;t=b;b=a; D.t=b;b=a;a=t;
第 7 页 共 64 页
《程序设计基础(C)》习题指导书
31.若变量已说明为int类型,要给a、b、c输入数据,正确的输入语句是( )。
A.scanf(\ B.read(a,b,c);
C.scanf(\D.scanf(\㈢.程序设计题
1. 编写程序,从终端键盘输入圆的半径r,圆柱体的高h,分别计算出圆周长c1、圆面积cs和圆柱的体
积cvs。输出计算结果时要求有文字说明,并取小数点后2位数字。 2. 输入一个华氏温度,要求输出摄氏温度。公式为:c=5(f-32)/9。
3. 编写程序,读入一个字母,输出与之对应的ASCII码,输入输出都要有相应的文字提示。
? 应用篇
㈠.填空题
1.以下程序的输出结果是_3.140000,3.142________。 main( )
{ printf(\}
2. 以下程序的输出结果是__ c:dec=120,oct=15,hex=78,ASCII=x _______。 main()
{ char c='x';
printf(\}
3. 已有定义int d=-2;执行以下语句后的输出结果是________。 printf(\
d(1)=-2 d(2)= -2 d(3)=12
4. 已有定义int d=-2;执行以下语句后的输出结果是________。 printf(\printf(\
5. 已有定义float d1=3.5,d2=-3.5;执行以下语句后的输出结果是________。 printf(\printf(\6. 若x为单精度型变量,y为字符型变量,z为整型变量,执行如下的输入语句:scanf(\
后,从键盘输入12.77A79A86。此时,变量x、y、z的值分别是__12.77_____、____ A ____、____79______。 7. 以下程序的运行结果是 。 #include
printf(\ gets(s); puts(s); }
Enter a string:string<回车>
string
8. 以下程序的运行结果是________。 #include
第 8 页 共 64 页
《程序设计基础(C)》习题指导书
{ char c='p';
printf(\ printf(\}
112,p 97,a
9. 以下程序的运行结果是________。 #include
{ float a=3.12345;
printf(\}
3.12,3.12e0
10.以下程序的运行结果是___221_____。 #include
{ int m=177;
printf(\}
㈡.选择题
1.执行以下程序段int a=1,b=2,c;c=a/b后,c的值是( )。 A.0 B.1/2 C.0.5 D.1 2.以下不符合C语法的赋值语句是( )。
A.m=(2+1,m+1); B.m=n=0; C.m=1,n=2 D.a=b=c=5; 3.以下能正确地定义整型变量a,b和c并为其赋初值5的语句是( )。 A.int a=b=c=5; B.int a,b,c=5; C.a=5,b=5,c=5; D.a=b=c=5;
4.已知ch是字符型变量,下面不正确的赋值语句是( )。 A.ch=’a+b’; B.ch=’\\0’; C.ch=’7’+’9’; D.ch=5+9;
5.已知ch是字符型变量,下面正确的赋值语句是( )。 A.ch=’123’; B.ch=’\\xff’; C.ch=’\\08’; D.ch=”\\”; 6.以下程序的运行结果是( )。 #include
{ int m=5,n=10;
printf(\}
A.5,9 B.6,9 C.5,10 D.6,10 7.设有以下程序:
程序执行后的输出结果是( )。 #include
第 9 页 共 64 页
《程序设计基础(C)》习题指导书
int a=201,b=012;
printf(\}
A.01,12 B.201,10 C.01,10 D.20,01
8.有定义语句int a,b;若要通过语句scanf(\使变量a得到数值6,变量b得到数值5,下面输入形式中错误的是(C)。(注:*代表空格)
A.6,5<回车> B.6,**5<回车> C. 6 5<回车> D.6,<回车> 5,<回车> 9.设有如下程序: #include
{ char ch1='A',ch2='a'; printf(\}
则以下叙述中正确的是( )。
A.程序的输出结果为大写字母A B.程序的输出结果为小写字母a
C.运行时产生错误信息 D.格式说明符的个数少于输出项的个数,编译出错 10.以下程序的运行结果是( )。 include
int x1=0xabc,x2=0xdef; x2-=x1;
printf(\}
A. ABC B.0Xabc C. 0X333 D.333 ㈢.判断题
1.C语言标准输入操作中,getchar()函数一次只可读取一个字符。( ) ? 2.C语言标准输入操作中,putchar()函数可以输出显示一个字符串。( )? 3.C语言标准格式输入函数scanf()的参数表中要使用变量的地址值。( )? 4.C语言标准格式输出函数printf()的参数表是由若干个表达式组成。( )? 5.标准格式输入函数scanf()可以从键盘接收不同数据类型的数据项。( )? 6.任何表达式语句都是表达式加分号组成的。( )? 7.表达式语句和表达式没什么区别。( )?
8.分号是C语言中语句的结束符,不可用作分隔符。( )? 9.空格符可用作分隔符,水平制表符不能用?作分隔符。( )
10.C语言本身不提供输入输出语句,输入输出操作是由函数来实现的。( )? ㈣.程序设计题
1.编写程序,输入两个整数1500和350,求出它们的商和余数并进行输出。
2.编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对小数点后第二位数进行四舍五入,最后输出结果。
3. 编程实现用getchar函数从键盘输入一个小写字母,并用putchar函数输出对应的大写字母。
? 提高篇
㈠.填空题
第 10 页 共 64 页