高级程序语言设计复习大纲doc.docx
- 文档编号:30267930
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:26
- 大小:37.69KB
高级程序语言设计复习大纲doc.docx
《高级程序语言设计复习大纲doc.docx》由会员分享,可在线阅读,更多相关《高级程序语言设计复习大纲doc.docx(26页珍藏版)》请在冰豆网上搜索。
高级程序语言设计复习大纲doc
题型及分数:
单选题:
2()分判断题:
10分
填空题:
20分
程序分析题:
20分编程题:
30分
其中:
课后习题及复习大纲中相类似题所占比例在70%—80%。
带*号的内容和复习题为较难部分,为非重点考察内容。
第一章C语言程序设计基础(出题比例4・6%)
1.程序设计语言的基本概念
/程序
/程序设计语言
“常用程序设计语言及其类型
/源程序、編译、口标文件、连接、可执行程序
/编程的步骤
2.C语言程序的基本结构
(1)C源程序的框架
C源程序的框架,主要有:
编译预处理、上函数()、函数n()等,主函数的位呂不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。
(2)C语言源程序的书写规则:
/C源程序是由一个主函数和若干个其它函数组成的;
“函数名后必须有小括号,函数体放在大括号内:
/C程序对大、小写字母书写敏感;
/每句的末尾加分号:
/可以一行多句;
/可以一句多行;
“可以在程序的任何位世加注秫,注释的方式。
3.C语言程序设计的的基本步骤和调试过程
复习题:
/*****
1.每个c语言程序中有IL仅有一个函数,它是程序的入口和出口。
2•引用C语言标准库函数,一般要用预处理命令将其头文件包含进来。
3.C语盲屈于()
A.高级语言B.低级语言
C.中级语言D.机器语言
4.C语言程序是曲组成。
5.C语言的源程序中的main函数在程序中的位世应该是。
6.C语官的语句以结尾。
7.C语言源程序经过编译以后生成文件,生成的文件名后缀为—,经过连接后生成—文件,后缀为
8.C语言中不能使用关键字作为标识符。
(丁)
第二章基本数据类型,运算符与表达式(岀题比例20—30%)
关键知识点:
1.常量,变蚩:
a)标识符的命名规则
b)常疑,变最的概念:
直接常最,符号常疑,变最必须先定义后使用
c)变呆名和变疑值的区别。
2.C语言中的基本数据类型
a)各种数据类型的数据在内存中的存放方式
b)掌握各种数据类型数据的常虽使用方法,特别注意字符常虽和字符串常虽的区别使用
c)整型,字符型,浮点型变虽的定义和引用方法
U)数据的数据类型,数据的值范围,数据在内存中存放方式三者之间的联系
3.运算符和表达式的便用方法
a)自增、自减运算符
b)赋值运算符
c)算术运算符及表达式
d)逗号运算符及表达式
e)*位运算符及表达式
0sizeof运算符及表达式
g)*强制数据类型转换符及表达式
4.运算符的优先级和结合性
本章复习题:
课后习题:
一、单选题,二、填空题
1.C语言的标识符命名规则中,第一个字符可以为字符•#'或'&•.(X)。
2.下列全部属于合法的用户标识符的是()
A.AlP_0dSB.float21a_A
C.*ahykkD.」23tempmain
3.C语言对字母的大小写不敏感。
(X)
4.C语言中,符号常量由宏定义命令#define来定义。
(J)
5・double,int.ch;ir、floal几种呈本数据类型变呈的存储空间从小到大的排列顺序为charinlflcxUdouble
6•下列四个选项中,均是合法的整型常量的选项是A
A・160-OXFFFFOilB。
・OXCDF01AOXE
C・-01986,0120688D。
-0X48a2e5Ox
7.合法的C语言字符常数是(A)
A.VB."A”C.54D.A
8.设有语句chara=A72r;即变量a(A)
A.包含-•个字符B.包含两个字符
C.包含3个字符D.说明不合法
9.若冇定义inta=7:
folatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是。
(2.500000〉
10.在C语言中,要求运算数一定是整型的运算符是(D)
A・/Bo++C。
!
二D。
%
11M殳有类型说明unsignedinta=65535・按%d格式输出a的值,其结果是(B)
12.(B)是非法的C语言转义字符
A.WB.fOxfC.'\037‘D.T
13・*若只、y、乃均为ini型变星,则执行以下语句后的输出是(A)x=(y=(z=10)+5)-5;
printf(Mx=%d,y=%d,z=%d\nM,x.y,z);
y=(z=x=0,x+10);
printf("x=%d,y=%d,z=%d\nM,x,y,z);
A.
x=IO.y=15,z=10
x=0,y=10,z=10
C.
x=10,y=15,z=10
x=10,y=10,z=0
14•以下程序的输出结果是(B)
B.
#includc
x=10,y=10,z=10x=0,y=10.z=0
D.x=10,y=l(),z=10
x=10,y=10,z=0
voidmain()
I
inta;
floatb.c;
scanf(H%2d%3f%4r\&a,&b&c);
printf(M\na=%d,b=%f,c=%f\n*\a,b,c);
}
如输入:
9876543210
A.a=98.b=765,c=4321B.a二9&b=765.000000c=4321.000(X)0
C.a二9&b二765・0,c=4321・0D.a=Lb=432x=8765
15.有如下定义:
inta=20.n=10;求下列表达式的值。
A.a/=a+a;
(a=_
_
(1)—)
B.a%=n%=7;
(a=_
_
(2)_
_)
C・a+=a-=a*=a;
(a=_(3)_
J
16•若有以下定义和语句(B)
charcl-b\c2-e*;
printf(M%d,%c\nM,c2-c1,c2-,a,+,A,);
则输出结果是:
A)2,MB)3,E
C)2,ED)不确定
17.在以下一组运算符中,优先级最高的运算符是(C)
A)<=B)=
C)%D)&&
第三章程序设计的控制结构(出题比例25—35%)
本章复习题包括课后习题:
一.单选题,二.填空题四、程序设计题1,2,4,&9
3.1顺序程序设计
关键知识点:
1.各种类型数据的格式化输入输出方法
a)字符的输入输出函数getchar()和putchar()
b)注意利用scanf函数输入变童值时不要漏掉取地址符号&
0调用printf函数输出各种类型数据的方法。
2.顺序程序设计方法和步
1.若有以下定义和语句:
(A)
intu=010,v=0xl03V=10;
printf(M%d,%d,%d\n,u,v,w);则输出结果是:
A)8,16J0B)10J0J0C)&&IOD)8,10,10
2.若有定义:
intx,y;chara,b.c;并有以卜'输入数据(此处
Iu2
AuBuC
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是(B)
A)scanf(Mx=%dy=%dH,&x,&y);a=getchar();b=getcharO;c=getchar();
B)scanf(H%d%d”,&x.&y);a=getchar();b=getchar();c=gelchar();
C)scanf(,,%d%d%c%c%c,\&x.&y,&*&b,&c);
D)scanf(n%d%d%c%c%c%c%c%c,,:
&x,&y5&a,&比&b,&b,&c,&c);
3•已有如下定义的输入语句,若要求A1.A2.CI.C2的值分别为10,20,A和B,当从第〜列开始输入数据时,正确的数据输入方式是(C)。
(注:
□表示空格,
intal,a2,;
charc1,c2;
scanf(・'%d%c%d%c':
&al,&cl,&a2,&c2);
A)IODAD2OB
B)10DAD20DB
C)10A20B
D)10A20DB
4•已知:
inix;floaty;所用的scanf调用语句格式为:
scanf(“x=%d,y=%f\&x,&y);
为了将数据10和66.6分别赋给x和y,正确的输入应当是(A)o
A)x=10,y=66.6<回车〉
B)10,66.6<回车〉
C)l(X回车>66.6v冋车〉
D)x=l(X回车〉y=66.6v回车〉
5•编程实现输入阿的半径,求關的面枳。
3.2选择程序设计
关键知识点:
1.C语言语句的分类
a)特别注意复合语句的使用
b)注意何时使用空语句
2.条件表达式
a)关系运算符
b)逻辑运算符
c)条件运算符的用法
<1)各种运算符的优先级关系和结合性
e)注意bool变呈的取值:
非零即真
3.选择结构的应用方式
a)if语句的几种应用方式:
if-clse配对问题
b)switch语句:
SWITCH后表达式类型,CASE后表达式类型
c)break的使用方法
I•已知x=45,ch二B,y二0;则表达式(xxy&&chvb&&!
y)的值是(C)
A.0B.语法错
C・1D・紋假"
2•下列关于switch语句和break语句的结论中.正确的是(B)。
A)break语句是switch语句的一部分
B)在switch语句中可以根据需要使用或不使用break语句
C)在switch语句中必须使用break语句
D)break语句不能在switch语句中使用
3.能正确表达:
“当x取值在[1J0J和[200,210]范围内为真,否则为假”的表达式是(C〉。
A)(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)
B)(x>=l)||(x<=10)||(x>=200)||(x<=210)
C)(x>=1)&&(x<=10)||(x>=200)&&(x<=210)
D)(x>=l)||(x<=10)&&(x>=200)||(x<=210)
4•假定所有变童均已止确说明,下列程序段运行后x的值是(B)a=b=c=0;x=35;
if(!
a)x—;
elseif(b);
if(c)x=3;
elsex=4;
A)34B)4C)35D)3
5.比以下两条if语句可合并成一条if语句为
if(a<=b)x=l;elsey=2;
if(a>b))prinlf(H****y%d\n\y);elseprinlf(M####x=%\nM,x);
6•运行以下程序后,如果从键盘上输入china#<冋车〉,则输出结果为C
A)2,0B)5,0C)5,5D)2,5
main()
{
intvl=0tv2=0;
charch:
while((ch=getchar())!
=,#')
switch(ch)
case
case
default:
vl++;
case'O':
v2++;
}
printf(“%d,%d\n”,vhv2);
}
7.若变虽c为char类型,能正确判断出c为小写字母的表达式赵D
A)*a,<=c<=NB)(c>=,a,)||(c<=*/)
C)(Wv二c)andCz*>=c)D)(c>=*a,)&&(c<=*/)
8.设a、b>C、d、m>n均为int型变量,且a=5、b=6^c=7>d=8>m=2>n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为C
A)0B)1C)2D)3
9•已知:
inta=4,b=5,c;则执行表达式c=a=a>bfs变量a的值为(A〉。
A)0
B)1
C)4
D)5
10•若给定条件表达式:
(n)?
(C++):
(c-).则与表达式n等价的表达式是(C)。
A)
n==0
B)
n==l
C)
n!
=0
D)
n!
=l
11•下面程序的输出结果是88898787。
键盘输入:
446755
#include
voidmain(void)
{
intc;
while((c=getchar())!
=W)switch(c・2)
{
case0:
case1:
putchar(c+4);
case2:
putchar(c+4);break;
case3:
putchar(c+3);
default:
pu(char(c+2);break;
printf();
12・逻辑运算符的运算优先级都要低于算术运算符。
(X)
3.3循环结构程序设计
关键知识点:
1.C语盲循环结构的用法,原理
2.三种循环的语法
a)while
b)do-while,
c)for
d)注总分号应何时出现:
3.break,continue的使用方法
4.循环嵌套(2璽)的用法
1.以下程序的输出结果是D
main()
{inta,b:
for(a=1,b=l;a<=100;a++)
{if(b>=10)break;
if(b%3==l)
{b+=3;continue;)
}
}
A)101B)6C)5D)4
2.执行语句for(i=0;i++<3;);后,变量i的值为(C)。
A)2
B)3
C)4
D)5
3•下列程序运行结果是(A)
#inckide
main()
{intx=231;
do
printf(M%2dM,x-);
while(!
x);}
A.231B.23C・无
4淀义inti=l;执行语句whilc(i++v5);后.i的值是(D)入3B・4C・5
5•设x和y均为int型变量,则执行下面的循环厉,y值为(C)tor(y=1,x=1;y<=50;y++)
{if(x==10)}break;
讦(x%2==1){x+=5;continue;}
x・=3;}
A)2B)4C)6D)8
6•假定a和b为int型变St则执行以下语句后b的值为(D)
a=l;b=10;
do{b-=a;a++;}while(b--<0);
A)9B)-2C)-lD)8
7.在下列选项中,没有构成死循坏的程序段是C
A)in(i=100
while
(1)
(i=i%100+l;
if(i>100)break;
}
B)for(;;);
C)intk=1000;
do{++k|while(k>=IO(X))
D)ints=36;
\Vhilc(s);“s;
8.设(为int类型,进入到下面的循环之前,t的值为0
while(t=l)
{……}
则以下叙述中正确的是(B)
A)循坏控制表达式的值为0B)循环控制表达式的值为1
C)循环控制表达式不合法D)以上说法都不对
9.
3二五+条矿77^+•••(_"
(2n+1)*nl
H
*写程序计算当=0.5时下述级数和的近似值,使其谋差小于某一个指定的值epsilon(例如:
epsilon=0.(X)(X)0l):
#defineE0.000001
#include
voidinain(void)
{
inti.k=l;
floatx、y、t=lts,r=l;
printf(^Pleaseenter);
scanf('*%f\&x);
for(s=x,y二x,i=2;fabs(r)>E;i++)
{
t*=i-1;
y*=x*x;
k♦=-1;
r=k*y/t/(2*i-l);
s+二r;
printf(s);
第四章数组(出题比例15-20%)
关键知识点:
1.数组变城的特征以及数据元素的特性
a)各数组元索类型-•致,个数有限,排列有序
2.一•维数组和二维数组变疑
a)如何定义数组
b)如何初始化数组
c)数组元素的引用方式
d)*数组元素的存储方式
c)*数纽元索的地址及其使用
3.字符串与字符数组的区别
a)字符申常量的返回值是地址
b)字符数组的赋值
c)字符串的输入和输出
d)注意字符串的结束标志
4.各类字符串库函数的使用方法
a)家握儿种常见的函数:
gets,puts,
b)*函数strcat»strcnip等
复习习题:
课后习题:
一、单选题,二、填空题三、程序设计题第2,3小题
1.合法的数组说明是(B儿
A)inta[]="string”;
B)inta[]={0.1,2,3,4.5};
C)chara=“string”;
D)charalJ={0,1,2,3,4,5};
2.要说明一个有10个int元素的数组,应当选择语句(A)
A)inta[IO];
B)inta[2,5];
C)inta[J;
D)int*a[10J;
3.已知:
intariO];则对a数组元素的正确引用是(D)。
A)a|10|
B)a|3.5]
C)a(5)
D)alO]
4•以下对一维数组a正确进行初始化的语句是(C)o
A)inta[10]=(0.0,0,0.0);
B)intallO]={};
C)inta[]={0};
D)inta[2J={10,9.8};
5•对以下说明语句的正确理解是(B)。
A)将5个初值依次賦给“11]至aI5|
B)将5个初值依次赋给a[0]至珥4]
C)将5个初值依次赋给a⑹至al10]
D)因为数组长度与初值个数不相同,所以此语旬不正确
6.执行下面的程序段后,变量k中的值为(A)
intk=3,s|2|;
sl0]=k;
k=s(ll*10;
D.10
A.不定值B.33C・30
7.若有以下程序片段:
(D)
charstr|]=Mab\n\012\\\MM;
则字符数组str能存储的字符个数为
A}3B}4C}6D}7
8.*函数调用:
strcai(sircpy(s(rl,str2)>s(r3)的功能是(c)
八)将出strl复制到串str2中后再连接到出str3Z后
B)将串strl连接到串str2Z后再芟制到串str3Z后
C)将串str2复制到串strl中后再将串str3连接到串strl之后
D)将串str2连接到串strl之后再将串strl复制到串s(r3中
9.已知:
charsllOOJ;inti;则下列引用数组元素的语句中,错误的表示形式是(D〉。
A)s[i+10]
B)*(s+i)
C)*(i+s)
D)*((s++)+i)
11.给出以下定义:
(C)
charx[|=MabcdefgH;
chary[]={,aVbt;c,;d\,eVf;g*};
则正确的叙述为
A)数纽X和数组Y等价B)数组x和数组Y的长度相同
C)数组X的长度大于数组Y的长度D)数组X的长度小于数组Y的长度
12•以下程序的输出结果是(B)
main()
{
intiXa[10],p[3]:
K=5;
for(i=0;i<10;i++)
a[i]=i;
for(i=0;i<3;i++)
p[i]=a[i*(i+l)J;
for(i=0;i<3;i++)
k+=p[i]*2;
printf(H%d\nM,k);}
13•以下程序的输出结果是D
A)ABCDB)ABCDC)EFGD)EFGH
FGHEFGJKIJKL
KLIJ0
M
main()
{
charw[][10]=|"ABCDTEFGH「IJKLTMNOP”},k;
for(k=1;k<3;k++)
printf(H%s\n\w[kl);
}
14.以下程序的输出结果是A
A)18B)19C)20D)21
main()
{
inta(3][3]={{1,2},{3,4},{5,6}},ij,s=O;
for(i=l;i<3;i++)
for(j=0;j<=i;j++)s+=a[i]|j];
prinif("%dn",s);
}
15•假定int类型变量占用两个字节,其冇定义:
intx[10]:
={0,2,4};,则数组x在内存中所占字节数是D
A)3B)6C)10D)20
16.以下程序的输出结果是C
main()
{
inti,a[l()];
for(i=9;i>=0;i-)a[il=10-i;
primf(M%d%d%d,\al2J,al5],al8J);
}
A)2588)741C)852D)369
17.以下数组定义中不正确的是D
A)inta⑵⑶;
B)in(b[]⑶二{0,123};
C)intc[100H1001={0);
D)intd[3][戶{{1,2},{1,2,3},{123,4}};
1&对字符数组sh•赋初值,sir不能作为字符串使用的一个是(D)。
A.charstrlJ=Mshanghaio;
B・charstr||={MshanghaiM};
C・charstr[9]={,s,;h\,a\,n,;g,;h\,a,;i,};
D.charstrl8]={,s,;h\,a,;n,:
g\,h,;a,;i,};
19•若有说明:
in(a[][3]={1234,567};则a数组第维的大小是。
20.设计程序:
定义一个1000个整数类型的数组;在该数组中依次存入1到1000。
第五章函数(出题比例15-20%)
关键知识点:
1.函数的概念、功能
2.函数使用方式
a)函数的定义
b)原型声明
c)调用方法
3.变疑的作用域:
形参,实参,变疑的作用域,生存期的概念
a)局部变蛍
b)全局变虽
4.变量存储类型
a)自动变虽
b)*寄存器变虽
c)*cxtcm变量
d)静态变虽
5.*函数的嵌套和递归
木章复习题
课后习题:
一、单选题,二、填空题四、程序设计题第2小题
1.以下对C语言函数的冇关描述中,正确的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级 程序语言 设计 复习 大纲 doc