C语言全部章节习题集(参考答案).txt如果真诚是一种伤害,请选择谎言;如果谎言是一种伤害,请选择沉默;如果沉默是一种伤害,请选择离开。第一章 C语言概述
一、选择题:
1、一个C程序的执行是从( A )。
A本程序的main函数开始,到main函数结束
B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C本程序的main函数开始,到本程序文件的最后一个函数结束
D本程序文件的第一个函数开始,到本程序main函数结束
2    C 语言中,每个语句必须以( D )结束。
A.  回车符    B.  冒号      C.  逗号      D.  分号
3C 语言规定:在一个源程序中,main函数的位置( C )。
A. 必须在最开始            B. 必须在系统调用的库函数的后面
C. 可以任意                D.  必须在最后
4、一个C 语言程序是由( B )。
A. 一个主程序和若干子程序组成  B. 函数组成
C. 若干过程组成                D. 若干子程序组成
5、下列说法中错误的是(  D  )
A.  主函数可以分为两个部分:主函数说明部分和主函数体
B.  主函数可以调用任何非主函数的其他函数
C.  任何非主函数可以调用其他任何非主函数
D.  程序可以从任何非主函数开始执行
6、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将(  C  )
A.  生成可执行目标文件    B.  生成目标文件
C.  输出运行结果          D.  自动保存源文件
二、填空题:
1C 语言只有 32  个关键字和  9  种控制语句。
2、每个源程序有且只有一个  main  函数,系统总是从该函数开始执行C语言程序。
3C 语言程序的注释可以出现在程序中的任何地方,它总是以  \*    符号作为开始标记,以  */      符号作为结束标记。
4C 语言中,输入操作是由库函数  scanf  完成的,输出操作是由库函     
    printf    完成的。
5、系统默认的C 语言源程序文件的扩展名是 .c  ,经过编译后生成的目标文件的扩展名是 .obj  ,经过连接后生成的可执行文件的扩展名是 .exe   
6C 语言的标识符只能由字母、数字和  下划线  三种字符组成。
第三章 数据类型、运算符和表达式
一、选择题:
1、以下选项中,不正确的 C 语言浮点型常量是( C )。
A. 160.    B. 0.12    C. 2e4.2      D.  0.0
2、以下选项中,( D )是不正确的 C 语言字符型常量。
A. 'a'        B. '\x41'      C. '\101'      D. "a"
3    C 语言中,字符型数据在计算机内存中,以字符的( C )形式存储。
A.  原码      B.  反码      C. ASCII     D. BCD
4、若xijk都是int型变量,则计算下面表达式后,x的值是()。
x=i=4j=16k=32
A. 4        B. 16        C.32        D.52
5、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为( B )
A.  算术运算、赋值运算、关系运算    B.  算术运算、关系运算、赋值运算
C.  关系运算、赋值运算、算术运算    D.  关系运算、算术运算、赋值运算
6、若有代数式 ,则不正确的C语言表达式是( C )。
A.a/b/c*e*3  B. 3*a*e/b/c    C.3*a*e/b*c    D. a*e/c/b*3
7、表达式!x||a==b 等效于(  D )
A. !((x||a)==b)    B. !(x||y)==b    C. !(x||(a==b))    D. (!x)||(a==b)
8、设整型变量 m,n,a,b,c,d 均为1,执行 (m=a>b)&&(n=c>d), m,n 的值是( A)。
A. 00    B. 01    C. 10    D. 11
9 设有语句 int a=3;,则执行了语句 a+=a-=a*=a;后,变量 a 的值是( B )
A. 3      B. 0    C. 9    D. -12
10、在以下一组运算符中,优先级最低的运算符是(  D )
A. *      B. !=      C. +    D. = 
11、设整型变量 i 值为2,表达式(++i)+(++i)+(++i)的结果是(  B )
A. 6      B. 12    C. 15    D.  表达式出错
12、若已定义 x ydouble 类型,则表达式 x=1y=x+3/2 的值是( C )
A. 1      B. 2    C. 2.0    D. 2.5
13sizeof (double)的结果值是(  A  )
A. 8      B. 4    C. 2    D.  出错
14、设a=1b=2c=3d=4,则表达式:a<b? a : c<d? a : d的结果为( D )
A. 4      B. 3    C. 2    D. 1
15、设a 为整型变量,不能正确表达数学关系:10<a<15 C 语言表达式是( A )
A. 10<a<15                  B. a= =11|| a= =12 || a= =13 || a= =14
C. a>10 && a<15              D. !(a<=10) && !(a>=15)
16、设 f是实型变量,下列表达式中不是逗号表达式的是(  D )
A. f= 3.2, 1.0      B. f>0, f<10      C. f=2.0, f>0      D. f=(3.2, 1.0) 
17 表达式18/4*sqrt(4.0)/8值的数据类型是()。
A. int    B. float    C. double    D. 不确定
18、已知字母AASCII码为十进制数65,且c2为字符型,则执行语句
C2=A+6-3;c2中的值是( A )。
A. D    B. 68    C. 不确定的值    D. C
19、以下用户标识符中,合法的是( B )。
A. int        B. nit        C. 123      D. a+b
20C 语言中,要求运算对象只能为整数的运算符是()。
A. %        B. /        C. >        D. *
21、若有说明语句:char c='\72';则变量c在内存占用的字节数是( A )。
A. 1    B. 2    C. 3    D. 4
22、字符串"ABC"在内存占用的字节数是(  B )。
A. 3    B. 4    C. 6    D. 8
23、要为字符型变量 a赋初值,下列语句中哪一个是正确的( B )。
A. char a="3";  B. char a=3;    C. char a=%;      D. char a=*;
24、下列不正确的转义字符是( C )。
A. \\    B. \'    C. 074      D. \0
二、填空题:
1C 语言中的逻辑值“真”是用  1  表示的,逻辑值“假”是用  0  表示的。
2、若xn都是int型变量,且x的初值为12n的初值为5,则计算表达式x%=(n%=2)x的值为  0 
3、设 c='w',a=1,b=2,d=-5,  则表达式 'x'+1>c, 'y'!=c+2, -a-5*b<=d+1, b==a=2的值分别为    1        0        1      1     
4、设 float x=2.5,y=4.7; int a=7;,表达式 x+a%3*(int)(x+y)%2/4的值为  2.5 
5、判断变量 ac语言中逗号表达式的用法、b 的值均不为 0 的逻辑表达式为a!=0&&b!=0 
6、求解赋值表达式 a=(b=10)%(c=6),表达式值、abc 的值依次为  4,4,10,6 
7、求解逗号表达式 x=a=3,6*a 后,表达式值、xa 的值依次为18,3,3 
8、数学式a/(b*c) C 语言表达式  a/b/c 
三、编程题:
1    设长方形的高为 1.5,宽为 2.3,编程求该长方形的周长和面积。
2    编写一个程序,将大写字母 A转换为小写字母 a
1
main()
{float x=1.5,y=2.3;printf(area is %6.2f\n,x*y);}
2.
main()
{char c=A;printf(%d,c+32);}
顺序结构答案
一、单项选择题
AADAB    CCBBD
二、 程序改错题
1.正确的程序为
# include "stdio.h"
main( )
{    char  c
      getchar(c);
      putchar('\007') ;  /*鸣笛*/
      putchar( );
}
2 正确的程序为
main( )
{ int a,b,s,l;
  scanf("%d,%d",&a,&b);
  s=a*b; l=2*(a+b);
  printf("l=%d,s=%d\n", l ,s);
  }
三、写出程序运行结果
1    68
2.    x=4
  y=11
四、编程题
1. main( )
{ int a,b,c,sum;
float ave;
scanf(%d%d%d,&a,&b,&c);
sum=a+b+c;  ave=sum/3.0;
printf(sum=%d,ave=%.2f\n,sum,ave);

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。