1、A) C语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚,具有其他语言的一切优点1.2.7 以下叙述中正确的是(A)。A) C程序中注释部分可以出现在程序中任意合适的地方B) 花括号“”和“”只能作为函数体的定界符C) 构成C程序的基本单位是函数,所有函数名都可以由用户命名D) 分号是C语句之间的分隔符,不是语句的一部分1.2.8 以下叙述中正确的是( B)。A) C语言的源程序不必通过编译就可以直接运行B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令C) C源程序经编译形成的二进
2、制代码可以直接运行D) C语言中的函数不可以单独进行编译1.2.9 用C语言编写的代码程序(B)。A) 可立即执行 B) 是一个源程序C) 经过编译即可执行 D) 经过编译解释才能执行1.2.10 以下叙述中正确的是(C )。A) 在C语言中,main函数必须位于程序的最前面B) C语言的每行中只能写一条语句C) C语言本身没有输入输出语句D) 在对一个C程序进行编译的过程中,可以发现注释中的拼写错误1.2.11 下列4组选项中,均不是C语言关键字的选项是( A )。A)define B)getc C)include D)while IF char scanf go type printf c
3、ase pow1.2.12 下列4组选项中,均是C语言关键字的选项是(B)。A)auto B)switch C)signed D)if enum typedef union struct include continue scanf type1.2.13 C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符(C)。A) 必须为字母 B)必须为下划线C)必须为字母或下划线 D)可以是字母、数字和下划线中任一种字符1.3 编程题1.3.1 参照本章例题,编写一个C程序,要求输出如下字符。*Welcome to Expo 2010!Shanghai 2010#include void
4、main() printf(“*n”); printf(“ Welcome to Expo 2010!n”);printf(“ Shanghai 2010n”);printf(“*n”);1.3.2 设计一程序,输入3个整数,计算并显示输出这3个整数之和。 int a,b,c; printf(“input a,b,c: scanf(“%d%d%d”,%a,%b,%c);printf(“the sum of a,b,c is %5dn”,a+b+c);第2章2.1填空题2.1.1 C程序中数据有 常量 和 变量之分,其中,用一个标识符代表一个常量的,称为 符号 常量。C语言规定在程序中对用到的所
5、有数据都必须指定其 数据 类型,对变量必须做到先 定义 ,后使用。2.1.2 C语言中,用关键字 float 定义单精度实型变量,用关键字 double 定义双精度实型变量,用关键字 char 定义字符型变量。2.1.3 在C语言中,以16位PC机为例,一个char型数据在内存中所占的字节数为 1 ;一个int型数据在内存中所占的字节数为 2 ,则int型数据的取值范围为 -3276832767 。一个float型数据在内存中所占的字节数为 4 ;一个double型数据在内存中所占的字节数为 8 。单精度型实数的有效位是 6-7 位 ,双精度型实数的有效位是 15-16 位 。2.1.4 设C
6、语言中的一个基本整型数据在内存中占2个字节,若欲将整数135791正确无误地存放在变量a中,应采用的类型说明语句是 long int a=15791; 。2.1.5 C的字符常量是用 单 引号括起来的 1 个字符,而字符串常量是用 双引号括起来的 字符 序列。2.1.6 C语言中,用“”开头的字符序列称为转义符。转义符“n”的功能是 回车换行 ;转义符“r”的功能是 回车 。2.1.7 若有定义:char c=010;则变量c中包含的字符个数为 1 。2.1.8 负数在计算机中是以 补码 形式表示。2.1.9 C语言中,&作为双目运算符是表示的是 按位与 ,而作为单目运算符时表示的是 取地址
7、。2.1.10 在C语言的赋值表达式中,赋值号左边必须是 变量 。2.1.11 自增运算符+、自减运算符-,只能用于 变量 ,不能用于常量或表达式。+和- -的结合方向是“自 右左 至 左 ”。2.1.12 若a是int型变量,则执行下面表达式后a的值为 2 。 a=25/3%32.1.13 写出下列数所对应的其它进制数(D对应十进制,B对应二进制,o对应八进制,H对应十六进制)32D= 100000 B= 40 O= 20 H75D= 1001011 B= 113 O= 4B H2.1.14 假设已指定i为整型变量,f为float变量,d为double型变量,e为long型变量,有式子10a
8、+i*f-d/e,则结果为 double 型。2.1.15 若有定义:int x=3,y=2; float a=2.5,b=3.5;则下面表达式的值为 1 。 (x+y)%2+(int)a/(int)b2.1.16 5/3的值为 1 ,5.0/3的值为 1.666667 。2.1.17 若有以下定义,int m=5,y=2;则执行表达式y+=y-=m*=y后的y值是 -16 。2.1.18 若a是int型变量,则表达式(a=4*5,a+2),a+6的值为 26 。2.1.19 若x和n均为int型变量,且x的初值为12,n的初值为5,则执行表达式x%=(n%=2)后x的值为: 0 。2.1.2
9、0 若有定义语句:int e=1,f=4,g=2;float m=10.5,n=4.0,k;,则执行表达式k=(e+f)/g+sqrt(double)n)*1.2/g+m后k的值是 13.7 。2.2 选择题2.2.1 逗号表达式(a=3*5,a*4),a+15的值是( C )。A) 15 B) 60 C) 30 D) 不确定2.2.2 若有以下定义和语句:char c1=, c2=f;printf(%d,%cn,c2-c1,c2-+B); 则输出结果是:( D )A) 2 ,M B) 5,! C) 2,E D) 5,G2.2.3 sizeof(float)是(B )。A)一个双精度型表达式
10、B)一个整型表达式C)一种函数调用 D)一个不合法的表达式2.2.4 若有以下定义,则能使值为3的表达式是(D )。int k=7,x=12;A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)2.2.5 在C语言中,要求运算数必须是整型的运算符是( A )。A) % B) / C) D) !2.2.6 下面4个选项中,均是合法整型常量的选项是( A )。A) 160 B) -0xcdf C) -01 D)-0x48a -0xffff 01a 986,012 2e5 011 0xe 0668 0x2.2.7 下面4个选项中,均是不合法浮点数的选
11、项是( B )。 A) 160. B)123 C) -.18 D)-e3 0.12 2e4.2 123e4 .234 E3 .e5 0.0 1e32.2.8 下面正确的字符常量是( C )。A)”C” B)” C)W D)2.2.9 在C语言中,int、char和short三种类型数据在内存中所占用的字节数( D )。A)由用户自己定义 B)均为2个字节 C)是任意的 D)由所用机器的机器字长决定 2.2.10 假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b)后x的值为( B )。A)7 B)8 C)6 D)22.2.11 假设所有变量均为整型,则表达式x=(i=4,j=16,k
12、=32)后x的值为( C )。A)4 B)16 C)32 D)522.2.12 若有代数式,则正确的C语言表达式是( D )。A)fabs(x*3+log(x) B)fabs(pow(x,3)+log(x)C)abs(pow(x,3.0)+log(x) D)fabs(pow(x,3.0)+log(x)2.2.13 设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是( B )。A)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0C)n=n*100+0.5/100.0 D) n=(n/100+0
13、.5)*100.02.2.14 以下不正确的叙述是( D )。A)在C语言中,逗号运算符的优先级最低B)在C语言中,APH和aph是两个不同的变量C)若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值2.2.15 以下正确的叙述是( D)。A)在C语言中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误地表示D)在C程序中,%是只能用于整数运算的运算符2.3编程题2.2.1 编写一程序,求出
14、给定半径r的圆的面积和周长,并输出计算结果。其中,r的值由用户输入,用实型数据处理。#include#define PI 3.14159 float r,c,s; printf(input the 半径 scanf(%f,&r); c=2*PI*r; s=PI*r*r;周长为%5.2f,面积为%5.2fn,c,s);2.2.2 已知华氏温度和摄氏温度之间的转换关系是:C5/9*(F32)。编写一程序,将用户输入的华氏温度转换为摄氏温度,并输出结果。 float c,f;input the 华氏温度 f); c=5.0/9*(f-32);华氏温度为%5.2f,摄氏温度为%5.2fn,f,c);习
15、 题 三3.1 填空题3.1.1 程序的三种基本结构是 顺序 、 选择 、 循环 。3.1.2 执行( a=3.0+5,a*4 ),a+=-6; 变量a 及表达式的值分别为 2.0,2.0 3.1.3 下列语句被执行后的执行结果是 1abcdef 。 int a=1; printf (“%d%s%s”,a,”abc”,”def”);3.1.4 getchar( ) 函数的作用是 从键盘上接收一个字符 。3.1.5 运行以下程序后,用户输入123456abc,输出结果为 123,45,6 。 int a,b; char c; scanf (%3d%2d%3ca,&b,&c);%d,%d,%c,a
16、,b,c); 3.1.6 下面程序的输出结果是 1112 。# include main() int a=1,b=4,c=2;float x=10.5,y=4.0,z; z=(a+b)/c+sqrt(double)y)*1.2/c+x; printf(“%fn”,z);3.1.10 下面程序运行后,若输入a=2,b=3结果是x1= 6.00 x2= 0.67 。void main( ) float a ,b ,x1, x2 ; scanf (“a=%f,b=%f“ ,&a ,&b ) ; x1=a*b ; x2=a/b ; printf (“x1=%5.2f nx2=%5.2f n” ,x1,
17、x2 );3.2 选择题3.2.1 指出下面正确的输入语句是( B )。A) scanf (“a=b=%d”,&b); B) scanf (“a=%d,b=%f”,&m,&f );C) scanf (“%3c”,c); D) scanf (“%5.2f”, &3.2.2 执行scanf (“%d%c%f”,&c) 语句,若输入1234a12f56 则变量a,b,c的值为 ( C )。A) a=1234 b=a c=12.56 B) a=1 b=2 c=341256C) a=1234 b=a c=12.0 D) a=1234 b=a12 c=56.03.2.3 执行scanf (“a=%d,b=
18、%d”,&b) 语句, 若要使变量a和b的值分别为3和4, 则正确的输入方法为( C )。A) 3 ,4 B) a:3 b: 4 C) a=3,b=4 D) 3 43.2.4 设b=1234 , 执行printf(“%d%d”,b) 语句,输出结果为: ( D )。A) 1234 B) %1234 C) %d1234 D) %d12343.2.5 若x是int型变量,y是float型变量,所用scanf语句为 scanf(“x=%d,y=%f”,&x,&y);正确的输入操作是( A )。A) x=10,y=66.6 B) 10 66.6C) 1066.6 D) x=10y=66.63.2.6
19、设a,b均是int型变量,则以下不正确的函数调用为( D )。A) getchar(); B) putchar(108);C) scanf(“%d,%2d”,& D) putchar();3.2.7 下列程序的执行结果是( C )。void main( ) int a=5;float x=3.14;a*=x*(E-A);printf (“%fn”,(float)a);A) 62.800000 B) 62 C) 62.000000 D) 63.0000003.2.8 若输入2.50 ,下列程序的执行结果是( A )。 float r , area ; scanf (“ %f ” , & r )
20、; printf (“ area=%f n” , area=1/2*r*r ) ;A) 0 B) 3.125 C) 3.13 D) 程序有错3.3 编程题3.3.1 编写程序,从键盘上输入2个整数给变量a和b,交换a、b值然后输出。/参考程序 int a,b,temp;%d%dn交换前: a=%d,b=%dn,a,b); temp=a;a=b;b=temp;交换后:,a,b) ;3.3.2 试编写一个程序,任意输入一个小写字母,分别按八进制、十进制、十六进制、字符格式输出。/参考程序: char c;请输入1个小写字母:n%c八进制: %on十进制: %dn ,c,c);十六进制: %xn字符
21、: %cn3.3.3 输入一个华氏温度,要求输出摄氏温度,输出要有文字说明,取2位小数。公式为:void main() float c,f; printf(“请输入一个华氏温度: scanf(“%f”,& c= 5.0/9*(f-32); printf(“华氏温度F=%.2fn”,f); printf(“摄氏温度c=%.2fn”,c);3.3.4 设圆半径r=3,圆柱高h=4,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字。请编程序。# define PI 3.1415926 float r,h,c,s1,s2,v
22、1,v2;printf(“请输入圆半径,圆柱高:”); scanf(“%f,%f”,&r,&h); s1=PI*r*r; s2=4*PI*r*r; v1=4/3*PI *r*r*r; v2=s1*h; printf(“r=%.2f,h=%.2fn”,r,h); printf(“圆周长=%.2f,圆面积=%.2fn”,s1,s2); printf(“圆体积=%.2f,圆柱体积=%.2fn”,v1,v2);习 题 四4.1 填空题4.1.1 表示条件:10x100或x0的C语言表达式是 10x &100 | x0 。4.1.2 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为 a 。4.1.3 若已知a=10,b=20,则表达式!abc的值是 0 。4.1.5 设y为int型变量,请写出描述“y是奇数”的表达式 y%2!=0 。4.1.6 设x,y,z为int型变量,请写出描述“x或y中有一个小于z”的表达式 x=z|x=z&yb & ca|ab的值是 1 。4.1.8 假设 a=5, b=2, c=4,以下表达式的值依次为: 0,1,1,1 。(1) a % b * c & c % b * a(2
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1