C语言复习总结要点Word格式文档下载.docx
- 文档编号:22314279
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:26
- 大小:23.97KB
C语言复习总结要点Word格式文档下载.docx
《C语言复习总结要点Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言复习总结要点Word格式文档下载.docx(26页珍藏版)》请在冰豆网上搜索。
起泡法排序,选择法排序,杨辉三角,求素数方法,最大公约数和最小公倍数方法,一维数
组的最大值,最小值平均值或求和等,二维数组的输入输出,求各种值,特殊二维数组的填充,矩
阵转置等等。
对一维数组的操作,如逆序存放,按指定要求的操作。
字符串:
逆序存放,大小写,求长度,复制,连接,等等指定的某种操作(灵活)
字符串一维数组的灵活操作,会用函数完成。
按题目的要求,用函数完成处理过程。
关系到算法的题目:
编写程序29分。
程序填空20分。
读程序也有关系,21分。
选择题,一般是基本概念。
模拟题A(闭卷考试)
一、选择题(每题2分,共20分)
1、以下不正确的C语言标识符是。
A.ABCB.abcC.a_bcD.ab.c
2、已知各变量的类型说明如下,则以下不符合C语言语法的表达式是:
。
intk,a,b;
unsignedlongw=5;
doublex=1.422;
A.k=(a=2,b=3,a+b)B.w+=-2C.x%(-3)D.a+=a=+(b=4)*(a=3)
3、下述for循环语句。
inti,k;
for(i=0,k=-1;
k=1;
i++,k++)printf("
****"
);
A.判断循环结束的条件非法B.一次也不循环
C.只循环一次D.是无限循环
4、在执行inta[][3]={1,2,3,4,5,6};
语句后,a[1][0]的值是。
A.5B.4C.2D.1
5、在C语言程序中,以下描述正确的是。
A.函数的定义和函数的调用均不可以嵌套
B.函数的定义和函数的调用均可以嵌套
C.函数的定义不可以嵌套,但函数的调用可以嵌套
D.函数的定义可以嵌套,但函数的调用不可以嵌套
6、如果在一个函数的复合语句中定义了一个变量,则该变量。
A.在该函数中任何位置都有效
B.只在该复合语句中有效,在该复合语句外无效
C.在本程序的源文件范围内均有效
D.此定义方法错误,其变量为非法变量
7、若有定义:
inta[3][4];
,则不能表示数组元素a[1][1]。
A.*(a+5)B.*(a[1]+1)C.*(&
a[1][1])D.(*(a+1))[1]
8、有如下程序段:
int*p,a=10,b=2;
p=&
a;
a=*p+b;
执行该程序段后,a的值是。
A、12B、11C、10D、编译出错
9、以下是不正确的转义字符。
A.'
\\'
B.'
\t'
C.'
\0'
D.'
\081'
10、当用户定义了一个结构体变量时,系统分配给它的内存为。
A.结构中第一个成员所需内存量B.成员中占内存量最大者所需的容量
C.各成员所需内存的总和D.结构中最后一个成员所需内存量
二、读程序写结果(每题3分,共21分)
1、以下程序运行后输出的结果是。
#include<
stdio.h>
voidmain()
{intx=3,y=1,z;
x*=3+2;
printf("
%d"
x);
x*=y=z=4;
%d\n"
}
2、以下程序的输出结果是。
{intx=1,y=1,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:
a++;
break;
case1:
b++;
case2:
b++;
case3:
a=%d,b=%d\n"
a,b);
3、以下程序的输出结果是。
structabc{inta;
intb;
intc;
};
{structabcs[2]={{1,2,3},{4,5,6}};
intt;
t=s[0].b+s[1].c;
%d\n"
t);
4、以下程序的输出结果是。
#include<
voidadd()
{intx=1;
staticinty=3;
%d%d"
x,y);
x=x+3;
y=y+5;
{inti;
for(i=0;
i<
2;
i++)
add();
5、以下程序的输出结果是。
intx;
voidcude()
{x=x*x*x;
{x=4;
cude();
6、以下程序的输出结果是。
voidfun(int*a,int*b,int*c)
{int*temp;
temp=a;
a=b;
b=temp;
*temp=*b,*b=*c;
*c=*temp;
{inta,b,c,*p1,*p2,*p3;
a=4;
b=5;
c=6;
p1=&
p2=&
b;
p3=&
c;
fun(p1,p2,p3);
%d,%d,%d\n"
a,b,c);
7、以下程序运行的结果是。
voidprtv(int*x)
{printf("
++*x);
{inta=8;
prtv(&
a);
三、程序填空(每空2分,共20分)
1、以下程序用递归法求Fibonacci数列的第8项的值。
请把函数补充完整。
Fibonacci数列的公式
为:
F
(1)=F
(2)=1;
当n>
2时,F(n)=F(n-1)+F(n-2)。
intFibonacci(intn)
{intf;
if(n==1||n==2)⑴;
elsef=Fibonacci(n-1)+Fibonacci(n-2);
return(f);
Theresultis%d\n"
⑵);
2、以下程序用来求两个正整数m和n的最大公约数。
把程序补充完整。
{intm,n;
intp;
scanf("
%d%d"
&
m,&
n);
p=⑶;
while(⑷)p--;
Theresultis%d\n"
p);
3、下面程序的功能是用选择法对10个整数从大到小排序。
排序由sort函数完成,输入输出在main
函数中完成。
请填空:
voidsort(intx[],intn)
{inti,j,k,t;
for(j=0;
j<
n-1;
j++)
{k=j;
for(i=j+1;
n⑸;
if(x[i]>
x[k])⑹;
if(k!
=j)
{t=x[j];
x[j]=x[k];
x[k]=t;
{intx[10],i;
10;
%d"
&
x[i]);
⑺;
x[i]);
4、写一函数,实现两个字符串的比较。
即自己写一个strcmp函数:
compare(s1,s2)。
如果s1=s2,
返回值为0,如果s1≠s2,返回它们二者第一个不同字符的ASCⅡ码差值("
BOY"
与"
BAD"
,第二个
字母不同,‘O’与‘A’之差为79-65=14)。
如果s1>
s2,则输出正值,如s1<
s2,则输出负值。
intcompare(char*p1,char*p2)
i=0;
while(*(p1+i)==*(p2+i))
if(*(p1+i++)=='
)return(⑻);
return(⑼);
{intm;
charstr1[20],str2[20];
%s"
str1);
str2);
m=⑽;
theresultis:
m);
四、填空题(每空1分,共10分)
1、在C语言中,实数有两种表示形式,即小数形式和⑴。
有两种数据类型:
float型和double
型,一般将实型常量看做⑵类型。
2、设inta=12;
则表达式a/=a+a的值是⑶。
3、表达式x=a=3,6*a和表达式x=(a=3,6*a)分别是⑷表达式和⑸表达式。
4、int(*p)[5];
定义的p是一个⑹。
5、数组名作函数参数时,从实参到形参传递的值是⑺。
6、文件可以分为记录式文件和流式文件,C语言的文件是⑻。
7、函数fclose的作用是⑼;
打开方式是“rb”表示的是⑽。
五、编程题(共29分,分别9分、10分、10分)
1、有一个四位正整数x。
如果将x的各个数字逆序存放得到另一个四位数y,即:
y的千位、百位、
十位、个位分别是x的个位、十位、百位、千位。
已知:
满足x=9y。
求这个四位数x。
2、对一个字符串,编写程序实现,循环右移长度的一半(如果长度n是奇数,则移动(n-1)/2)。
例如:
如果字符串是:
ABCDEFGH则循环右移后的结果是:
EFGHABCD
ABCDEFGHI则循环右移后的结果是:
FGHIABCDE
3、10个学生,5门课程的考试成绩,编写一个处理函数,统计每个学生不及格课程的门数。
在主函
数中输入所有成绩,调用处理函数,输出结果。
模拟题B(闭卷考试)
A.AB.CB.abcC.a_bcD.ABC
A.w+=-2B.x%(-3)C.k=(a=2,b=3,a+b)D.a+=a=+(b=4)*(a=3)
A.1B.2C.4D.5
A.只在该复合语句中有效,在该复合语句外无效
B.在本程序的源文件范围内均有效
C.在该函数中任何位置都有效
A.*(a[1]+1)B.*(&
a[1][1])C.(*(a+1))[1]D.*(a+5)
int*p,a=10,b=1;
\n'
10、当用户定义了一个共用体变量时,系统分配给它的内存为。
A.各成员所需内存的总和B.成员中占内存量最大者所需的容量
C.结构中第一个成员所需内存量D.结构中最后一个成员所需内存量
{intx=2,y=3,z;
{intx=1,y=0,a=0,b=0;
t=s[0].a+s[1].c;
{intx=2;
staticinty=2;
{x=x*x;
{x=6;
a=3;
b=7;
c=5;
{inta=10;
if(n==1||n==2)f=1;
elsef=⑴;
⑵;
Fibonacci(9));
while(m%p!
=0||n%p!
=0)⑷;
i<
{k=i;
for(j=i+1;
if(x[j]>
x[k])k=j⑹;
=i)
{t=x[i];
x[i]=x[k];
{inta[10],i;
a[i]);
sort(a,10);
a[i]);
⑻;
)return0;
chars1[20],s2[20];
s1);
s2);
1、在C语言中,C程序的基本构成单位是⑴。
一个C程序至少有且只有一个⑵。
则表达式a*=a+a的值是⑶。
3、表达式x=(a=3,6*a)和表达式x=a=3,6*a分别是⑷表达式和⑸表达式。
4、int*p[5];
6、设a=3,b=4,c=5,则表达式a||b+c&
&
b-c的值是⑻。
7、函数feof的作用是⑼;
打开方式是“w”表示的是⑽。
1、有一个四位正整数a。
如果将a的各个数字逆序存放得到另一个四位数b,即:
b的千位、百位、
十位、个位分别是a的个位、十位、百位、千位。
满足9a=b。
求这个四位数a。
2、对一个字符串,编写程序实现,循环左移长度的一半(如果长度n是奇数,则移动(n-1)/2)。
ABCDEFGH则循环左移后的结果是:
ABCDEFGHI则循环左移后的结果是:
EFGHIABCD
3、10个学生,5门课程的考试成绩,编写一个处理函数,统计每门课程不及格学生的人数。
模拟题A答案
DCDBCBAADC
1、15602、a=1,b=23、84、13185、646、6,5,67、9
1、⑴f=1⑵Fibonacci(8)
2、⑶p=m>
n?
n:
m⑷m%p!
=0
3、⑸i<
n⑹k=i⑺sort(x,10)
4、⑻0⑼*(p1+i)-*(p2+i)⑽compare(str1,str2)
⑴指数形式⑵double型⑶0⑷逗号(,)
⑸赋值⑹指向一维数组的指针变量⑺数组的首地址
⑻流式文件⑼关闭文件⑽二进制只读文件
参考答案:
#include"
stdio.h"
{intx,y,a,b,c,d;
for(a=1;
a<
=9;
a++)
for(b=0;
b<
b++)
for
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 复习 总结 要点