C 语言程序设计习题参考答案.docx
《C 语言程序设计习题参考答案.docx》由会员分享,可在线阅读,更多相关《C 语言程序设计习题参考答案.docx(82页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言程序设计习题参考答案习题1、判断题3 .二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。4 .在整数的二进制表示方法中,的原码、反码都有两种形式。原码表示法在数值前面増加了一位符号位(即最髙位为符号位):正数该位为,负数 该位为1 (0有两种表示:+0和一0),其余位表示数值的大小.反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符 号位除外。补码表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。 5.有符号数有三种表示法:原码、反码和补码。6 .常用字符的ASCH码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、 小写英
2、文字母。解:1. F 2. T 3. T 4. T 5. T 6. T 二、单选题1.在计算机中,最适合进行数值加减运算的数值编码是。A.原码B.反码C.补码D,移码4.设在机器字长4位,X=0111B,丫= 1011B,则下列逻辑运算中,正确的是。A. XAY=1000B. XVY = 1111C. XY=0011 D. Y =10006.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()A,生成可执行文件B,生成目标文件656 7.下列叙述中不正确的是() A. main函数在C程序中必须有且只有一个 B. C程序的执行从main函数开始,所以main函数必须放在程序最前面
3、C.函数可以带参数,也可以不带参数。D,每个函数执行时,按函数体中语句的先后次序,依次执行每条语句 解:1. C 2. C 3. D 4. B 5. B 6. B 7. B 三、填空题1. (87.625) io= () 2=()8=()162. (1001010111001.10111) 2= () 8= () ,6=() io 3.输入三个数,计算并输出三个数的和与三个数的乘积。程序如下: #include void main() ( int a, b, c, s, z;printf (MPlease input a b c:nn);s=a+b+c;printf(M%dnnz s);*4.
4、输入三角形三条边的边长,计算并输出三角形的面积。 根据三条边的边长,计算三角形面积的公式如下:其中面依=y s(s - x)(s - y)(s - z)程序如下: #include #include void main() ( double x,y,z,s,dime; scanf (n%lf%lf%lfH,&xz &yz &z);dime=sqrt(s*(s-x)*(s-y)*(s-z);解:1. 1010111.101127.557.A2. 11271.5612B9.B84793.718753. scanf(%f%f%F,&a,&b,&c); z=a*b*c;4. s=(x+y+2)/2;p
5、rintf (無,dim);四、编程题1 .仿照例1.1,编程序在屏幕上显示:Merry Christmas!Happy New Year! 解:include void main() printf(*n); printf( Merry Christmas!n);printf(Happy New Year!n);printf(*n);2 .仿照例1.2编程,输入个整数,计算这个数的平方。 解:#includevoid main() int a, z;printf (请输入个整数:n);scanf(%d, &a);z=a*a;printf (%d*%d=%dn”, a, a, z);*3.仿照例
6、1.3编程,输入两个数后,输出其中较小值。解:#includefloat min(float x, float y) float m;if (xy) m=x;elsem=y;return m;)void main() float a, b, c, mindata;printf (请输入二个数:n);scanf (%f %f”, &a, &b);mindata=min(a, b);printf (较小数:%fn, mindata);*4.仿照例1.2编程,输入。、b后,输出元一次方程ox+6二的解。解:#includevoid main() float a, b, x;printf (请输入 a
7、、b:n);scanf C%f %f, &a, &b);x=-a/b;printf(x二%fn,x);)*5.仿照例1.2编程,输入圆柱体的半径和高,计算并输出圆柱体的体积。 解:include void main() float r, h, s, v;printf (/zPlease input r and h:n);scanf(%f %f, &r, &h);v=3. 14*r*r*h;printf(V=%fn,v);、判断题1 .任何变量都必须要定义其类型。2 . C语言的double类型数据在其数值范围内可以表示任何实数。3 . C语言的任何类型数据在计算机内都是以二进制形式存储的。4
8、. isdigit(5)的结果为 。5 . printf函数中格式符“c”对应的参数只能是字符类型。6 .按格式符“d”输出float类型变量时,截断小数位取整后输出。7 .在C语言程序中,ABC与abc是两个相同的变量。8 . scanf函数中的格式符“d”不能用于输入实型数据。9 .格式符“f”不能用于输入double类型数据。10 .当格式符中指定宽度时,输出的信息完全取决于所指定的宽度。 解:T (2)F (3)T (4)F (5)F (6)F (7)F (8)T (9)T(10)F二、指出下列各项中哪些是C语言中的常量,并指出其类型10,150007-0x3dnleOelo7o8xx
9、o1.52e0.5sin(3)Oxfl 60091.414E+22.54a+2OxlOOh012810L解.三、合法的C常量有:整型常量:007-0x3dOxfl 610L实型常量:leO1.414E+2字符型常量:X,aW指出下列各项中哪些是C语言中的用户标识符x_lX_2HighprintfP3DSi/je2 e2countIntnumber$23next_sizeofIFsum_12 23#NO1:doublefor解.c 的用户标识符有:x_lX_2 High e2 count Intnumber四、next_IFsum_12单项选择题1. C语言中,char型数据在内存中的存储形式是
10、()。A.原码B.反码C,补码D.ASCI! 码2 .若有定义语句“charc=72; ”则变量c ()。A.包含1个字符B.包含2个字符C.包含3个字符D.定义不合法3 . C语言中的基本数据类型包括()A,整型、实型、逻辑型B,整型、实型、字符型C.整型、逻辑型、字符型D.整型、实型、逻辑型、字符型4 .设cl、c2为字符型变量,执行语句“cl=getchar( ); c2=getchar( ); n时,从键盘输 入A/, cl和c2的值分别为()。A.都是AB. cl是A, c2未输入C. cl 未输入,c2 是AD. cl 是A, c2 是n5. a、b是整型变量,执行语句“ scan
11、f(a=%d, b=%d, &a, &b); ”,使a和b的值分 别为1和2,正确的输入是()A. 1 2 B. 1, 2C. a=l, b=2 D. a=l b=26 .设c为字符型变量值为A, a为整型变量值为97,执行语句“putchar(c); putchar(a); ” 后,输出结果为()。A. Aa B. A97C. A9D. aA7 .已知字母A的ASCII码值为65,以下语句段的输出结果是()。char cl= * A * r c2= * Y *; printf(n%d,clr c2);A.输出格式非法,输出错误信息 B. 65, 90C. A, YD. 65, 898 .若要
12、使用输入语句“scanf(%4d%4d%10,&i, &j, &x): ”,为i输入10,为j 输入12,为x输入345.67,则正确的输入形式是()。A. -1012345.67/B. -10 12 345.67/C. -10001200345.67/D. -10,12,345.67/9 .能正确地定义符号常量的是()A. #define n=10 B. #define n 10 C. #define n 10; D. #DEFINE N 1010 .在C语言中,int、char、short三种类型数据在内存中所占的字节数().A.由用户自己定义B,均为2个字节C,是任意的D.由机器字长决定
13、 解: D (2) A (3) B (4) D (5) C (6) A (7) D (8) B (9) B (10) D五、填空题1. char ch=$,; float x=153.4523;语句 uprintf(,%c%-8.2fn,ch,x); w 的输出结果是 解:$153.45 n2. int i=123; float x=- 1234.56789;语句 “printf(i=5d x=%.3fn”,i,x);” 的输出结果是 解:i= 123 x=-1234.5683. char c=a; int a=65;语句 “putchar(c+l);putchar(a); ” 的输出结果是
14、解:bA4. int a=98;语句 “printf(d,%c,%o,%x”,a,a+l,a+2,a+3);” 的输出结果是 解:98, c, 144, 655. int k; float f;语句 “scanf(3d%*4d%6,&k,&f);” 执行时输入 12345678765.43 /则 k= , f= 解:k=123f=8765. 46. 使用pow()函数时,程序的开头必须写一条预处理命令:解:#include 5 .填空题。(1)int i=123, j=45;函数printf (%d, %dn”, i, j);的输出结果是 解:123, 45(2)int i=123; floa
15、t x=-45. 678;语句 printf (i=%5d x=%7. 4fn”, i, x):的输出结果是 解:i= !23 x=-45.6780(3)float alfa=60, pi=3习题3一、根据下列数学式,写出c的算术表达式。c + dcd-(a2 +b,)x y4工j Jjsin(x)tan x 十 万解:-(a2+b2) Xy4 的 C 表达式:-(a*a+b*b)*pow(y, 4)5/2 + 10 的主、4,_|X(sqrt (2)+10*10)/ (pow(tan(x), -1)+3. 141593) 的C表达式:I sin(x) I tan- x + 4的 C 表达式:
16、sqrt (pow (fabs (sin(x), 3. 5)x6 e5 的 C 表达式:pow(x, 6)-exp (5)二的 C 表达式:(1. 0/2*a*b+c+d) / (a+2*b- (c+d) /c/d)一,c + da + 2bcd二、按照要求,写出下列C的表达式。1 .写出int类型变量x为“奇数”的表达式。解:x%2=l2 . Int类型变量x、y、z,写出描述“x或y中有且仅有一个小于z”的表达式。解:x=z|x=z&y=0? 1:-1)*(y=0?y:-y)5 .条件“-5WxW3”所对应的C逻辑表达式。解:-5=x&x=36 . a、b是字符变量,已知a的值为大写字母、
17、b的值为小写字母,写出判断a、b是否为 同一字母(不区分大小写)的逻辑表达式解:a+32=b 或 b-a=32?l;7 . int类型变量a、b均为两位正整数,写出判断a的个位数等于b的十位数、且b的个 位数等于a的十位数的逻辑表达式。解:a%10=b/10&a/10=b%108 .写出判断某个人是否是成年人(年龄大于21),且不是老年人(年龄大于65)的逻辑表达 式。解:y21&yb?a:b)c?(ab?a:b):c10 .若字符变量ch为小写字母,则将其转换为对应的大写字母。解:ch=ch=aMch=z?ch-32:ch三、单项选择题1 .设intx=3, y=4, z=5;,下列表达式中
18、值为0的是()。A.B. x=y C. x|y+z&y-z D. !(x=y&ch B&!y的值是(),A. 0B. 1C. “假D. “真”3 .判断char型变量c为数字字符的正确表达式为().A. 0=c=9 B. 0=c&c=0|c=0&c=94 .下列运算符中,优先级最低的是()A. ? : B. &C. =D. *=5 .若有条件表达式“ x?a+:b”,则以下表达式中()等价于表达式X。A. x=0B. x!=0C. x=lD. x!=l6 .有定义 int k=4, a=3, b=2, c=l;,表达式 “kc);后,为 0解:m为, n为29 .设inta=2;,表达式“a%
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计习题参考答案 语言程序设计 习题 参考答案
限制150内