C语言实验与习题finalWord文档格式.docx
- 文档编号:16906486
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:135
- 大小:960.06KB
C语言实验与习题finalWord文档格式.docx
《C语言实验与习题finalWord文档格式.docx》由会员分享,可在线阅读,更多相关《C语言实验与习题finalWord文档格式.docx(135页珍藏版)》请在冰豆网上搜索。
6.具有综合运用以上知识编写程序,解决计算与数据处理类问题的初步能力。
II、考试内容
一.C语言基础
1.C语言特点(识记);
2.C语言程序基本组成(识记):
C语言程序的结构与主函数,程序的书写格式与规范;
3.基本数据类型:
标识符与基本数据类型(识记),
常量与变量(领会),
内存的概念(识记);
4.基本输入、输出函数(领会):
格式输入和格式输出函数,
非格式化输入、输出函数;
5.运算符与表达式(简单应用):
算术运算,增1与减1运算,关系运算,逻辑运算,条件运算,
位运算,赋值运算,类型转换,逗号运算,长度运算符,
运算符的优先级与结合性。
二.程序控制结构
1.C语言的语句(识记):
C语言语句的语法及书写规范;
2.顺序结构(领会):
程序设计的流程图,程序控制结构中的顺序结构,复合语句;
3.分支结构(简单应用):
if结构、if结构的多种形式,switch结构与多分支结构;
4.循环结构(综合应用):
当型循环,直到型循环,break语句与continue语句。
三.构造型数据
1.数组(综合应用):
一维数组,字符数组,二维数组;
2.结构类型:
结构类型的概念,结构类型定义及结构变量说明,结构变量的使用(领会),
结构变量的初始化,结构数组的初始化(识记);
3.联合类型(识记):
联合类型的概念,联合类型定义和联合变量说明,联合类型的使用;
4.枚举型(识记):
枚举型的定义和使用枚举型变量;
5.typedef的用途(识记):
使用typedef定义新类型名。
四.指针
1.指针与指针变量(识记):
指针的基本概念,指针变量的定义,指针变量的赋值;
2.指针运算符(领会):
地址运算符与指针运算符、间接寻址;
3.指针与数组(简单应用):
指针与一维数组,移动指针及两指针相减运算,指针比较,
指针与字符串,
指针与二维数组;
4.指针数组与指向指针的指针(识记):
指针数组,定义指针数组,指针数组的应用,
指向指针的指针,定义指向指针的指针变量,指向指针的指针变量的应用;
5.指针与结构(领会):
指向结构变量的指针变量,指向结构数组的指针变量。
五.函数
1.常见的系统库函数(识记):
输入、输出函数(stdio.h):
printf,scanf,getchar,putchar,puts,gets;
字符与字符串函数(string.h):
strcpy,strcat,strcmp,strlen;
简单数学函数(math.h):
sqrt,fabs,sin,cos,exp,log,log10,pow;
2.用户自定义函数(简单应用):
函数定义、调用和说明,函数返回值,函数参数;
3.函数之间的数据传递(领会):
函数数据按数值传递,函数数据按地址传递,
利用函数返回值和外部变量进行函数数据传递,结构变量作为函数参数传递;
4.函数的嵌套调用及递归调用(领会):
函数的嵌套调用、函数的递归调用;
5.局部变量与全局变量(识记):
局部变量与全局变量的定义、初始化及作用范围;
6.变量的存储类型与变量的初始化(领会):
局部变量与全局变量的生存期,
静态变量与动态变量的定义、初始化、作用范围及生存期;
7.编译预处理(领会):
文件包含,无参宏定义。
六.文件
1.文件的基本概念,C语言中的两种文件(识记);
2.文件的打开、关闭和文件结束测试,文件的读写,文件的定位(识记)。
七.算法与编程(综合应用)
1.用C表达式或函数计算相对应的数学表达式;
2.连加与连乘的计算,级数的计算;
3.冒泡法排序与选择法排序;
4.矩阵的简单运算与显示;
5.字符串操作;
6.文件编程应用。
八.使用TurboC集成开发环境调试程序
1.源程序的编写、编辑与改错(领会);
2.集成环境下的求助Help(识记);
3.程序的编译与目标代码的生成(识记);
4.程序的调试(综合应用):
单步运行程序,运行到光标处,断点设置,变量内容的跟踪、显示与修改;
5.了解TurboC程序的常见错误提示(识记)。
Ⅲ、考试说明
一.考试形式
采用无纸化上机考试;
考试环境:
WindowsXP简体中文版,
TurboC2.0或以上集成环境(IDE);
考试时间:
90分钟。
二.试卷题型结构
1.选择题(20小题)40%;
2.程序改错题(2小题)20%;
3.程序填空题(2小题)20%;
4.编程题(2小题)20%。
四、理论习题
1.第一章第二章
1.C语言的函数体由()括起来。
A)<
>
B){}
C)[]
D)()
2.下面叙述错误的是()
A)一个C源程序可由一个或多个函数组成
B)构成C语言源程序的基本单位是语句
C)C源程序中大、小写字母是有区别的
D)若一条语句较长,可分写在下一行或多行上
3.下面叙述正确的是()
A)每行最多只能写两条语句
B)main()函数必须位于源程序文件的开头
C)所有语句都必须以分号;
结束
D)程序中必须含有自定义函数
4.C源程序中main()函数的位置()。
A)必须位于程序的最前面
B)必须在自定义函数前面
C)必须在系统库函数后面
D)可以在自定义函数后面
5.结构化程序设计不包括()。
A)最优化
B)自顶而下,逐步细化
C)模块化设计
D)结构化编码
6.下面叙述中,()不是结构化程序设计中的三种基本结构之一。
A)数据结构
B)选择结构
C)循环结构
D)顺序结构
2.第三章数据类型、运算符和表达式
1.()为非法的字符串常量
A)“056”
B)‘123’
C)““
D)“case”
2.()为正确的用户标识符。
A)min-5
B)max_at
C)3_row
D)union
3.以下()是正确的变量名。
A)a.bee
B)-p11
C)int
D)p_11
4.以下()是正确的变量名。
A)5f
B)if
C)f.5
D)_f5
5.以下()是正确的常量。
A)E-5
B)1E5.1
C)'
a12'
D)32766L
6.以下()是不正确的字符串常量。
A)'
abc'
B)"
12'
12"
C)"
0"
D)"
"
7.以下()是正确的字符常量。
A)"
c"
B)'
\\'
W'
\32a"
8.char型变量存放的是()。
A)ASCII代码值
B)字符本身
C)十进制代码值
D)内码值
9.()为合法的常量。
A)5,236
B)1.23E+8
C)‘b_k’
D)3.21E-6.5
10.()为正确的字符常量
A)‘\084’
B)‘bcd’
C)‘165’
D)‘@’
11.若有定义:
intb=-15;
则()为正确的赋值表达式。
A)*b=6
B)b=*5
C)b+10=-5
D)b+=b*3
12.若有定义:
intx=2;
则正确的赋值表达式是()。
A)a-=(a*3)
B)double(-a)
C)a*3
D)a*4=3
13.若有定义:
floatx=2,y;
inta=3;
语句y=1*(x+a)/3;
运行后,y的值为()。
A)2.0
B)1.666667
C)1.0
D)0
14.若有定义:
inta,b=5;
语句a=(b/2)+b%2;
运行后,a的值为()
A)3
B)4
C)0
D)2
15.下面叙述正确的是()
A)2/3与2%3等价
B)5/(int)4.0与5/4等价
C)++2与--3等价
D)++2与3等价
16.若有定义:
inta,b=6;
语句a=--b;
运行后,a、b的值分别是()。
A)66
B)56
C)55
D)65
17.若有定义:
inti=3,j=6;
则表达式(--i)*(j++)的值为()。
A)10
B)18
C)15
D)12
18.语句x=(a=3,b=++a);
运行后,x、a、b的值依次为()。
A)3,3,4
B)4,4,3
C)4,4,4
D)3,4,3
19.已知inta='
R'
;
则正确的表达式是()。
A)a=int(3e2)
B)2*a=a++
C)a=a+a=a+3
D)a%10
20.已知chara='
则正确的赋值表达式是()。
A)a=(a++)%4
B)a+2=3
C)a+=256--
D)a='
\078'
21.语句a=(3/4)+3%2;
运行后,a的值为()。
A)0
B)1
C)2
D)3
22.若有定义:
intx,a;
则语句x=(a=3,a+1);
运行后,x、a的值依次为()。
A)3,3
B)4,4
C)4,3
D)3,4
23.设整型变量a为5,使b不为2的表达式是()。
A)b=(++a)/3
B)b=6-(--a)
C)b=a%2
D)b=a/2
24.设单精度型变量f、g的值均为2.0,使f为4.0的表达式是()。
A)f+=g
B)f-=g+2
C)f*=g-6
D)f/=g*10
25.若有定义:
intk,i=2,j=4;
则表达式k=(++i)*(j--)的值是()。
A)8
B)12
C)6
D)9
26.若有定义:
inta=3;
语句a+=a-=a*a;
运行后,a的值为()
A)-6
B)0
C)-12
D)-3
27.若有定义:
floatx=3.5,y=5.5;
则表达式()的值为2.
A)(int)x+y%7
B)(int)(x+y)%7
C)int(x+y)%7
D)(x+y)%7
28.若有定义:
intb=-15;
则()为正确的赋值表达式。
A)b=*5
B)*b=6
29.下面叙述正确的是()。
A)2/3与2.0/3.0等价
B)(int)2.0/3与2/3等价
C)++5与6等价
D)'
A'
与"
A"
等价
30.若有定义intx=1,y=2,n=3;
则()为正确的表达式。
A)x=y*3,y=(x+n)/y
B)(x+y)(y+n)
C)float(y/n)
D)x=ny
31.若有定义:
intx,y,z;
语句x=(y=z=3,++y,z+=y);
运行后,x的值为()
A)7
B)3
C)8
D)6
32.若有定义:
floatx=3.5;
intz=8;
则表达式x+z%3/4的值为()。
A)3.75
B)3.5
C)3
D)4
33.若有定义:
floatx=3.5,y=3.6,则表达式()的值为6。
A)(int)x+(int)y
B)(int)(x+y)
C)int(x+y)
D)x+y
34.下面叙述正确的是()。
A)(3+9)++是正确的表达式
B)“abc”+”xxx”是正确表达式
C)c语言中整型与字符型变量的混合运算表达式的结果是整型
D)模运算符%两边运算数的数据类型是任意的
35.若有定义:
intx;
charc=’A’;
则正确的赋值表达式是().说明‘A’的ASCII码的十进制值为65,‘a’的ASCII码的十进制值为97
A)x=c+’ABC’
B)x=c+32
C)x=c+’CBA’
D)x=’ABC’
36.若有定义:
charc1=’A’,c2=’B’;
语句printf(“%d+%d=%d”,c1,c2,c1+c2);
运行后的结果为()。
说明:
‘A’的ASCII码的十进制值为65
A)65+65=AB
B)A+B=131
C)65+66=131
D)A+B=AB
37.下面叙述错误的是()。
A)算术运算符中只有“*”、“/”优先级高于关系运算符
B)模运算符“%”是C语言基本的算术运算符
C)算术运算符中不包含“=”运算符
D)自加和自减运算符只能用于变量,而不能用于常量或表达式
38.下面叙述正确的是()。
A)强制类型转换运算的优先级高于算术运算
B)若a和b是整型变量,(a+b)++是合法的
*'
B'
是不合法的
+"
B"
是合法的
39.下面关于算术运算符的叙述,错误的是()。
A)%(模运算符)的运算对象只能为整型量
B)算术运算符的结合方向是"
自左至右"
C)自加和自减运算符的结合方向是"
自右至左"
D)其运算对象不包含函数
3.第四章顺序程序设计
1.Getchar()函数的功能是获取终端输入的()
A)一个字符
B)多个字符
C)一个整型变量表达式
D)一个实型变量值
2.只能向终端输出一个字符的是().
A)printf()函数
B)getchar()函数
C)scanf()函数
D)putchar()函数
3.若有定义inta=8,b=5;
要实现输出形式为:
8*5=40,正确的printf()函数调用语句是()
A)printf(“%d*%d=%d\n”,a,b,a*b);
B)printf(“a*b=%d\n”,a*b);
C)printf(“%d*%d=a*b\n”,a,b);
D)printf(“a*b=a*b\n”);
4.若有定义floatx;
要从键盘输入数据6.02赋给x,则应选用()语句。
A)scanf(“%8.2f”,&
x);
B)scanf(“%4.2f”,&
C)scanf(“%f”,&
D)scanf(“%1.2f”,&
5.若有定义:
intx=1234,y=123,z=12;
则语句printf("
%4d+%3d+%2d"
x,y,z);
运行后的输出结果为()。
A)123412312
B)12341234123412341231231231212
C)1234+1234+1234
D)1234+123+12
6.若有语句inta;
charc;
scanf(“%3d%c”,&
a,&
c);
为将整数135赋给a,字符‘6’赋给c,正确的数据输入方式是()。
<
CR>
代表换行,_代表空格
A)135_6_
B)135_6<
C)1356<
D)135<
6<
7.若有定义:
inta;
则表达式()不能用来判断a值为奇数是“真”,偶数是“假”
A)a%2==1
B)!
(a%2==0)
C)a%2
D)!
(a%2)
8.若有定义:
且表达式!
a的值为0,则表达式()的值为1.
A)a==0
B)a=0
C)!
(a<
0||a>
0)
D)a!
=0
9.若有定义:
inta=1,b=2,c=3,d=4,t=2,k=2;
语句(t=a<
b)||(k=c<
d);
运行后,k的值为()。
A)2
B)-1
D)1
10.已知chara;
使用scanf()函数输入一个字符给变量a,不正确的函数调用是()。
A)scanf("
%d"
&
a);
B)scanf("
%lf"
C)scanf("
%c"
D)scanf("
%u"
4.第五章选择程序设计
1.若有定义:
intx=1,y=2,z=3;
则表达式()的值为0。
A)!
((x<
y)&
&
z)
B)x||(y+z&
y-z)
C)x>
y||x<
z
D)x<
=y
2.下列运算符中优先级最低的是()。
A)*
B)=
C)>
3.以下运算符中优先级最高的是()。
A)>
B)||
C)&
D)+
4.若有定义:
intx=3,y=4;
则表达式!
x||y的值为()。
A)1
5.若有定义:
inti=7,j=8;
则表达式i>
=j||i<
j的值为()。
B)变量i的值
D)变量j的值
6.若有定义:
intx,a;
赋值语句a=(x%3==0)?
0:
1;
与()语句不等价。
A)If(!
(x%3==0))a=1;
elsea=0;
B)If(x%3)a=0;
elsea=1;
C)If(x%3!
=0)a=1;
elsea=0;
D)If(x%3==0)a=0;
inta=1,b=2,c=3,d=4,x=5,y=6;
则表达式(x=a>
b)&
(y=c>
d)的值为()。
C)5
inta=1,b=2,c=3,d=4,t=2,k=2;
b)||(t=c<
d);
运行后,k的值为().
inta=6,b=7,k=0,t=1;
语句(k=a<
(t=a==b);
运行后,k、t的值分别是()
10.若有定义:
inta=3,b=5,c=8;
则表达式!
(a-b)||(c-b)的值为()
11.若有定义:
a的值为0,则表达式()的值为1。
A)a=0
B)a!
D)a==0
12.以下程序段运行后x的值为()
inta=3,b=6,x;
x=(a==b)?
a++;
--b;
A)4
B)2
13.若有定义:
inta=1,b=2,c=3;
则执行以下程序段后a,b,c的值分别为()。
if(a<
b)
{c=a;
a=b;
b=c;
}
A)a=1,b=2,c=3
B)a=2,b=3,c=1
C)a=2,b=3,c=3
a=2,b=1,c=1
14.以下程序段运行后变量a的值为()。
intx=6,y=5;
a=(--x==y++)?
x:
y+1;
D)5
15.C语言对if嵌套语句的规定:
else总是与()配对。
A)第一个if
B)之前最近的且尚未配对的if
C)缩进位置相同的if
D)之前最近的if
16.以下程序段运行时,若从键盘输入5,则运行结果是()。
inta,y=10;
scanf(“%d”,&
if(a>
10)
y=a+6;
printf(“%d\n”,y+a);
B)16
D)11
17.以下程序的运行结果是()。
voidmain()
{inta,b=2,c=6;
a=3;
if(a>
6)
a=a+b;
elseif(a==6)
b=a+c;
else
a=b+c;
printf("
%d\n"
a);
B)9
18.以下程序段的运行结果是().
ints=15;
switch(s/4)
{case1:
printf("
One"
);
case2:
Two"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 实验 习题 final