C语言习题集(平时练习含答案)1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言习题集
第一章C语言概述
复习要点:
1. 程序的构成,main函数和其他函数。
2.语句,注释
3.运行C程序的步骤和方法
习题:
1.C程序是由函数构成的,一个C程序中至少包含一个main函数。2.函数是C程序的基本单位。(最小单位是表达式)
3.C程序有且只有一个main函数。
4.C程序从main函数开始执行。
5.C程序注释符是由/*和*/组成,且不能嵌套使用。
6.C程序的语句是以; 结束。
7.C程序一条语句可分多行写,需要以为连接符。(可以直接换行)
8.C程序可以用{ 和} 将多条语句括起来,形成复合语句。
9.上机运行一个C程序必须经过源代码输入,编译,连接,运行4个步骤。
10.C程序的源文件扩展名是。c 。
11.以下叙述中正确的是(C)
A)C语言程序将从源程序中第一个函数开始执行
B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C)C语言规定必须用main作为主函数名,main必须小写,程序将从此开始执行,在此结束
D)main可作为用户标识符,用以命名任意一个函数作为主函数
12.以下叙述中错误的是(D)
A)C语言源程序经编译后生成后缀为.obj的目标程序
B)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
C)用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
D)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
13.以下不是语句的是(A)
A) a=10 B)a=b+c;c=20;C) ; D){a=b;b++;}
14.运行以下程序
main()
{
int a=10; /* 定义一个变量 a
a=20; */
printf(“%d”,A); 此程序应该改写为:printf(“%d”,a)
}
输出的结果是 B 。
A) 10 B)20
15.牢记VC++6.0的出错提示
英文提示中文实际意义
missing ; , ( { 等表示缺少;,( {
'T' : undeclared identifier T没有定义(T要先定义然后才能使用)
'sqrt' undefined; sqrt如果是函数名则表示它的头文件没有包含'T' : redefinition T重复定义(可能是多次定义了T)
Cannot open include file 头文件的拼写或路径的不对
第二章数据类型,运算符与表达式
复习要点:
1. C的数据类型(整型,字符型,浮点型)及其定义方法。
2. C运算符的种类、运算优先级和结合性。
3. 不同类型数据间的转换与运算。
4. C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。
习题:
1.C语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为大小写字母和下划线。
2.字符常量使用一对单引号界定单个字符,而字符串常量使用一对双引号来界定若干个字符的序列。
3.浮点数有十进制小数形式;(2)指数形式两种表示形式。
4. C语言%(取余的操作符)要求两个操作数是整型。
5.关系运算的值是整型。
6.Sizeof(int)的意义返回int型变量在内存中占的字节数。
7.假设所有变量均为整型:a=b=5;i=++a;j=b++;则i等于 6 j等于 5 。
8.假设所有变量均为整型:a=3;b=5;a>b&&++a;a
9. 假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+B)的值为9 。
提示:a=2,b=5,a++,b++,i=a,j=b,a+b的值
10. a=(2,5,2+5) 则a的值为7。
11.表达式:(int)(7.2/2)的值是3。
12.C语言中,不同运算符之间运算次序存在先后的区别,同一运算符之间运算次序存在结合性的规则。
13.32与八进制数40相等,75与十六进制数4b相等
14.已知x=2.5,a=7,y=4.7则x+a%3*(int)(x+y)%2/4的值是 2.5
15. 下列关于C语言用户标识符的叙述中正确的是( C )
A) 用户标识符中可以出现下划线和字母,可以和关键字同名
B) 用户标识符中不可以出现中划线,但可以出现下划线
C) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头
D) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头
16.有以下程序
#include
main()
{ char c1,c2;
c1='A'+'8'-'4';
c2='A'+'8'-'5';
printf("%c,%d\n",c1,c2);
}已知字母A的ASCII码为65,程序运行输出后的结果是( A )
A)E,68 B)D,69 C)E,D D)输出无定值
17.以下各组标识符中,合法的用户标识符是( D )
A)B01 table_1 0_t k%
B)Fast_ void pbl book
C)xy_ longdouble *p CHAR
D)sj Int _xy w_y23
18.在C语言中,字符型数据在内存中以(D)形式存放。
A)原码B)BCD码C)反码D)ASCII码
19.已知字符’A’的ASCⅡ代码值是65,字符变量c1的值是’A’,c2的值是’D’。执行语句printf("%d,%d",c1,c2-2);后,输出结果是C
A)A,B B)A,68 C)65,66 D)65,68
20.1MB等于(D)
A)1000字节B)1024字节C)1000*1000字节D)1024*1024字节
21. 与十六进制数200等值得十进制数为(B )
A)256 B)512 C)1024 D)2048
22.设变量n为float型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是(B )
A)n=(n*100+0.5)/100.0 B)m=n*100+0.5, n=m/100.0
C)n=n*100+0.5/100.0 D)n=(n/100+0.5)*100.0
23.以下叙述中错误的是(D )
A)C程序中的#include和#define行均不是C语句
B)除逗号运算符外,赋值运算符的优先级最低
C)C程序中,j++;是具有赋值功能的语句
D)C程序中,+、-、*、/、%号是算术运算符,可用于整型和实型数的运算
24.以下关于long、int和short类型数据占用内存大小的叙述中正确的是(D )
A)均占4个字节B)根据数据的大小来决定所占内存的字节数
C)由用户自己定义D)由C语言编译系统决定
25.已知x=10,y=20,则表达式y+=5+x的值为( C )
A)25 B)-10 C)35 D)10
26.以下常量正确的是( D )
A)0X7a, 078, 6a, 57L,
B)10., -.5e3, 1e0, 0.0012e-101
C)‘’, ‘\”’, ‘\0127’, ‘\xff’
D) 56, -.3, .e2, 1.2e2.1 ,”xy”