赞
踩
c语言第二章到第八章课后习题及答案
第二章 习题1、 以下选项中可作为 C 语言合法常量的是A)-80.B)-080C)-8e1.0D)-80.0e 2、 以下不能定义为用户标识符的是A)MainB)_0C)_intD)sizeof 3、以下选项中,不能作为合法常量的是 A)1.234e04B)1.234e0.4C)1.234e 4D)1.234e0 4、 以下不能正确计算代数式值的 C 语言表达式是A)1/3*sin(1/2)*sin(1/2) B)sin(0.5)*sin(0.5)/3C)pow(sin(0.5),2)/3 D)1/3.0*pow(sin(1.0/2),2) 5、 以下能正确定义且赋初值的语句是A)int n1=n2=10; B)char c=32;C)float f=f+1.1; D)double x=12.3E2.5; 6、 设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是A)k=k>=k B)-k++ C)k%int(f) D)k>=f>=m7、 设有定义:int a=2,b=3,c=4;,则以下选项中值为 0的表达式是A)(!a==1) 执行该程序段后,k的值是A)3 B)2 C)1 D)0 9、 若以下选项中的变量已正确定义,则正确的赋值语句是A)x1=26.8%3 B)1+2=x2 C)x3=0 x12 D)x4=1+2=3; 10、以下 4个选项中,不能看作一条语句的是A){;} B)a=0,b=0,c=0; C)if(a>0); D)if(b==0) m=1;n=2; 11、若变量 x,y以正确定义并赋值,以下符合 c 语法的表达式是 A.++x,y=x-- B. x+1=y c.x=x+10=x+y D. double(x)/1012、 以下叙述中错误的是 A)C 程序中的#include 和#define 行均不是 C 语句 B)除逗号运算符外,赋值运算符的优先级最低 C)C 程序中,j++;是赋值语句 D)C 程序中,+、-、*、/、%号是算术运算符,可用于整型和实型数的运算 二、填空题 1.int k=11, 则 k++后表达式的值_____和变量 k的值______。 2.double x=3.2,++x 后表达式的值_____和 x的值_______。 3.表达式 3.5+1/2 的计算结果是_____。 4.把 a1、a2 定义成双精度实型变量,并赋初值 1的定义语句是____。 5.表达式 s=10 应当是读做“_________” 。 三、上机改错题 1.请指出以下 C 程序的错误所在: #include stdio.h main(); / * main function * /float r,s; /*/* r is radius*/,/* s is area of circular*/*/r=5.0; s=3.14159*r*r; printf(“%f\n”,s) 2. 请指出以下 C 程序的错误所在: main /*main function*/{float a,b,c,v; / *a,b,c are sides , v si volume of cube * /a=2.0;b=3.0;c=4.0v=a*b*c;printf(“%f\n”,v) } 答案 一.选择题 1.A 2.D 3.B 4.A 5.B 6.D 7.A 8.B 9.C 10.D 11.A 12.D 二.填空题 1. 11,12 2. 4.2, 4.2 3. 3.5 4. double a1=1,a2=1; 5. 把 10赋值给变量 s 三.略 第三章 习题 一、选择题 (1)有以下程序main(){ int m,n,p;scanf(“m=%dn=%dp=%d“,printf(“%d%d%d\n“,m,n,p); } 若想从键盘上输入数据,使变量 m 中的值为 123,n中的值为 456,p中的值为 789,则正确 的输入是 a)m=123n=456p=789b)m=123 n=456 p=789 c)m=123,n=456,p=789 d)123 456 789 (2) 已知 i、j、k 为 int 型变量,若从键盘输入:1,2,3,使 i 的值为 1、j 的值为 2、k的值为 3,以下选项中正确的输入语句是a) scanf(“%2d%2d%2d”,b) scanf(“%d %d %d”, c) scanf(“%d,%d,%d”, d) scanf(“i=%d,j=%d,k=%d”, (3) 设有定义:long x=-123456l;,则以下能够正确输出变量 x值的语句是a)printf(“x=%d\n”,x); b) printf(“x=%1d\n”,x);c)printf(“x=%8dl\n”,x); d)printf(“x=%ld\n”,x); (4) 以下程序段的输出结果是int a=1234;printf(“%2d\n“,a);a) 12 b) 34 c) 1234 d) 提示出错、无结果 (5) x、y、z 被定义为 int 型变量,若从键盘给 x、y、z 输入数据,正确的输入语句是a) x、y、z; b) scanf(“%d%d%d”,c) scanf(“%d%d%d”,x,y,z); d) read(“%d%d%d”, (6) 若变量已正确说明为 float 类型,要通过语句 scanf(“%f %f %f ”,给 a 赋 于 10.0,b赋予 22.0,c 赋予 33.0,不正确的输入形式是:a) 10 b) 10.0,22.0,33.02233c) 10.0 d) 10 2222.0 33.0 33 (7) 有如下程序main0{ int y=3,x=3,z=1;printf(“%d %d\n”,(++x,y++),z+2);}运行该程序的输出结果是 a) 3 4 b) 4 2 c) 4 3 d) 3 (8)有以下程序 main()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。