ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:23.97KB ,
资源ID:9178180      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9178180.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言复习总结要点.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言复习总结要点.docx

1、C语言复习总结要点C语言学习要点:第三章 合法的标识符命名规则。各种运算符的语法,优先级结合性。转义字符。 输入输出概念,输入时候的分隔符,常用的输入输出格式 第四章 选择 if 语句 switch 语句 if(x=*) if(x= =*) 的区别 break 跳出一层 不能多层 第五章 循环 几种循环语句要熟悉使用方法,循环嵌套 第六章 数组 数组定义使用 二维数组输入输出的方法! 起泡法排序(又叫冒泡法) 字符串的灵活使用,编程的时候灵活处理 第七章 函数 函数基本概念 函数原型 -构造一个函数,解决一个问题 函数递归:求阶乘,Fibonacci 数列,猴子吃桃 等类似的递归数列的第n 项

2、。 数组名作参数的题目 选择法排序 全局变量局部变量 存储类别 局部变量对全局变量的屏蔽 被调函数里 static 类型的变量的值 第八章 指针 灵活使用简单指针变量,即 int *p; float *p; char *p; 等等。 所学的所有 有关指针变量的定义 记住 第九章 结构体和共用体 基本概念 链表的操作的关键语句 第十章 文件 基本概念 打开关闭文件,常用的几个输入输出函数 算法:起泡法排序,选择法排序,杨辉三角,求素数方法,最大公约数和最小公倍数方法,一维数组的最大值,最小值平均值或求和等,二维数组的输入输出,求各种值,特殊二维数组的填充,矩阵转置等等。对一维数组的操作,如逆序存

3、放,按指定要求的操作。 字符串:逆序存放,大小写,求长度,复制,连接,等等指定的某种操作(灵活) 字符串一维数组的灵活操作,会用函数完成。 按题目的要求,用函数完成处理过程。 关系到算法的题目:编写程序 29 分。程序填空20 分。读程序也有关系,21 分。 选择题,一般是基本概念。 模拟题A (闭卷考试) 一、选择题(每题2分,共20分) 1、以下不正确的C 语言标识符是 。 A. ABC B. abc C. a_bc D. ab.c 2、已知各变量的类型说明如下,则以下不符合C 语言语法的表达式是: 。 int k,a,b; unsigned long w=5; double x=1.42

4、2; A. k=(a=2,b=3,a+b) B. w+=-2 C. x%(-3) D. a+=a=+(b=4)*(a=3) 3、下述for 循环语句 。 int i,k; for(i=0,k=-1;k=1;i+,k+) printf(* * * *); A. 判断循环结束的条件非法 B. 一次也不循环 C. 只循环一次 D. 是无限循环 4、在执行int a3=1,2,3,4,5,6;语句后,a10的值是 。 A. 5 B. 4 C. 2 D. 1 5、在C 语言程序中,以下描述正确的是 。 A. 函数的定义和函数的调用均不可以嵌套 B. 函数的定义和函数的调用均可以嵌套 C. 函数的定义不可

5、以嵌套,但函数的调用可以嵌套 D. 函数的定义可以嵌套,但函数的调用不可以嵌套 6、如果在一个函数的复合语句中定义了一个变量,则该变量 。 A. 在该函数中任何位置都有效 B. 只在该复合语句中有效,在该复合语句外无效 C. 在本程序的源文件范围内均有效 D. 此定义方法错误,其变量为非法变量 7、若有定义:int a34; ,则 不能表示数组元素a11。 A. *(a+5) B. *(a1+1) C. *(&a11) D. (*(a+1)1 8、有如下程序段: int *p,a=10,b=2; p=&a;a=*p+b; 执行该程序段后,a 的值是 。 A、12 B、11 C、10 D、编译出

6、错 9、以下 是不正确的转义字符。 A. B. t C. 0 D. 081 10、当用户定义了一个结构体变量时,系统分配给它的内存为 。 A.结构中第一个成员所需内存量 B. 成员中占内存量最大者所需的容量 C.各成员所需内存的总和 D. 结构中最后一个成员所需内存量 二、读程序写结果(每题3分,共21分) 1、以下程序运行后输出的结果是 。 #include void main() int x=3,y=1,z; x*=3+2; printf(%d ,x); x*=y=z=4; printf(%dn,x); 2、以下程序的输出结果是 。 #include void main() int x=1

7、,y=1,a=0,b=0; switch(x) case 1: switch(y) case 0: a+;break; case 1: b+;break; case 2: a+;b+;break; case 3: a+;b+; printf(a=%d,b=%dn,a,b); 3、以下程序的输出结果是 。 #include struct abc int a; int b; int c; ; void main() struct abc s2=1,2,3,4,5,6; int t; t=s0.b+s1.c; printf(%d n,t); 4、以下程序的输出结果是 。 #include void

8、add() int x=1; static int y=3; printf(%d %d ,x,y); x=x+3; y=y+5; void main() int i; for(i=0;i2;i+) add(); 5、以下程序的输出结果是 。 #include int x; void cude() x=x*x*x; void main() x=4; cude(); printf(%dn,x); 6、以下程序的输出结果是 。 #include void fun(int *a, int *b, int *c) int *temp; temp=a; a=b; b=temp; *temp=*b, *b=

9、*c; *c=*temp; void main() int a,b,c,*p1,*p2,*p3; a=4; b=5; c=6; p1=&a; p2=&b; p3=&c; fun(p1,p2,p3); printf(%d,%d,%dn,a,b,c); 7、以下程序运行的结果是 。 #include void prtv(int * x) printf(%dn,+*x); void main() int a=8 ;prtv(&a); 三、程序填空(每空2分,共20分) 1、以下程序用递归法求Fibonacci 数列的第8 项的值。请把函数补充完整。Fibonacci 数列的公式为:F(1)=F(2)

10、=1 ;当n2 时,F(n)=F(n-1)+F(n-2)。 #include int Fibonacci(int n) int f; if(n=1|n=2) ; else f=Fibonacci(n-1)+Fibonacci(n-2); return(f); void main() printf( The result is %dn, ); 2、以下程序用来求两个正整数m 和n 的最大公约数。把程序补充完整。 #include void main() int m,n; int p; scanf(%d%d,&m,&n); p= ; while( )p-; printf(The result is

11、 %dn,p); 3、下面程序的功能是用选择法对10 个整数从大到小排序。排序由sort 函数完成,输入输出在main 函数中完成。请填空: #include void sort(int x,int n) int i,j,k,t; for(j=0; jn-1;j+) k=j; for(i=j+1;ixk) ; if(k!=j) t=xj; xj=xk; xk=t; void main() int x10,i; for(i=0;i10;i+) scanf(%d, &xi); ; for(i=0;is2,则输出正值,如s1s2,则输出负值。 #include int compare(char *p

12、1,char *p2) int i; i=0; while(*(p1+i)=*(p2+i) if(*(p1+i+)=0)return( ); return( ); void main() int m; char str120,str220; scanf(%s,str1); scanf(%s,str2); m= ; printf(the result is:%dn,m); 四、填空题(每空1分,共10分) 1、在C 语言中,实数有两种表示形式,即小数形式和 。有两种数据类型:float 型和double 型,一般将实型常量看做 类型。 2、设int a=12; 则表达式a/=a+a 的值是 。

13、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、对一个字符串,编写程序实现,循环右移长度的一半(如果长

14、度n 是奇数,则移动(n-1)/2)。例如: 如果字符串是: ABCDEFGH 则循环右移后的结果是: EFGHABCD 如果字符串是: ABCDEFGHI 则循环右移后的结果是: FGHIABCDE 3、10 个学生,5 门课程的考试成绩,编写一个处理函数,统计每个学生不及格课程的门数。在主函数中输入所有成绩,调用处理函数,输出结果。 模拟题B (闭卷考试) 一、选择题(每题2分,共20分) 1、以下不正确的C 语言标识符是 。 A. AB.C B. abc C. a_bc D. ABC 2、已知各变量的类型说明如下,则以下不符合C 语言语法的表达式是: 。 int k,a,b; unsig

15、ned long w=5; double x=1.422; A. w+=-2 B. x%(-3) C. k=(a=2,b=3,a+b) D. a+=a=+(b=4)*(a=3) 3、下述for 循环语句 。 int i,k; for(i=0,k=-1;k=1;i+,k+) printf(* * * *); A. 判断循环结束的条件非法 B. 一次也不循环 C. 只循环一次 D. 是无限循环 4、在执行int a3=1,2,3,4,5,6;语句后,a10的值是 。 A. 1 B. 2 C. 4 D. 5 5、在C 语言程序中,以下描述正确的是 。 A. 函数的定义和函数的调用均不可以嵌套 B.

16、函数的定义和函数的调用均可以嵌套 C. 函数的定义不可以嵌套,但函数的调用可以嵌套 D. 函数的定义可以嵌套,但函数的调用不可以嵌套 6、如果在一个函数的复合语句中定义了一个变量,则该变量 。 A. 只在该复合语句中有效,在该复合语句外无效 B. 在本程序的源文件范围内均有效 C. 在该函数中任何位置都有效 D. 此定义方法错误,其变量为非法变量 7、若有定义:int a34; ,则 不能表示数组元素a11。 A. *(a1+1) B. *(&a11) C. (*(a+1)1 D. *(a+5) 8、有如下程序段: int *p,a=10,b=1; p=&a;a=*p+b; 执行该程序段后,a

17、 的值是 。 A、12 B、11 C、10 D、编译出错 9、以下 是不正确的转义字符。 A. 081 B. C. t D. n 10、当用户定义了一个共用体变量时,系统分配给它的内存为 。 A. 各成员所需内存的总和 B. 成员中占内存量最大者所需的容量 C. 结构中第一个成员所需内存量 D. 结构中最后一个成员所需内存量 二、读程序写结果(每题3分,共21分) 1、以下程序运行后输出的结果是 。 #include void main() int x=2,y=3,z; x*=3+2; printf(%d ,x); x*=y=z=4; printf(%dn,x); 2、以下程序的输出结果是 。

18、 #include void main() int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y) case 0: a+;break; case 1: b+;break; case 2: a+;b+;break; case 3: a+;b+; printf(a=%d,b=%dn,a,b); 3、以下程序的输出结果是 。 #include struct abc int a; int b; int c; ; void main() struct abc s2=1,2,3,4,5,6; int t; t=s0.a+s1.c; printf(%d n,t);

19、4、以下程序的输出结果是 。 #include void add() int x=2; static int y=2; printf(%d %d ,x,y); x=x+3; y=y+5; void main() int i; for(i=0;i2;i+) add(); 5、以下程序的输出结果是 。 #include int x; void cude() x=x*x; void main() x=6; cude(); printf(%dn,x); 6、以下程序的输出结果是 。 #include void fun(int *a, int *b, int *c) int *temp; temp=a;

20、 a=b; b=temp; *temp=*b, *b=*c; *c=*temp; void main() int a,b,c,*p1,*p2,*p3; a=3; b=7; c=5; p1=&a; p2=&b; p3=&c; fun(p1,p2,p3); printf(%d,%d,%dn,a,b,c); 7、以下程序运行的结果是 。 #include void prtv(int * x) printf(%dn,+*x); void main() int a=10 ;prtv(&a); 三、程序填空(每空2分,共20分) 1、以下程序用递归法求Fibonacci 数列的第8 项的值。请把函数补充完

21、整。Fibonacci 数列的公式为:F(1)=F(2)=1 ;当n2 时,F(n)=F(n-1)+F(n-2)。 #include int Fibonacci(int n) int f; if(n=1|n=2)f=1; else f= ; ; void main() printf( The result is %dn,Fibonacci(9); 2、以下程序用来求两个正整数m 和n 的最大公约数。把程序补充完整。 #include void main() int m,n; int p; scanf(%d%d,&m,&n); p= ; while(m%p!=0|n%p!=0) ; printf

22、(The result is %dn,p); 3、下面程序的功能是用选择法对10 个整数从大到小排序。排序由sort 函数完成,输入输出在main 函数中完成。请填空: #include void sort(int x,int n) int i,j,k,t; for(i=0; in-1;i+) k=i; for(j=i+1;ixk) k=j ; if(k!=i) t=xi; xi=xk; xk=t; void main() int a10,i; for(i=0;i10;i+) scanf(%d, &ai); sort (a,10); ; for(i=0;is2,则输出正值,如s1s2,则输出负

23、值。 #include int compare(char *p1,char *p2) int i; ; while(*(p1+i)=*(p2+i) if(*(p1+i+)=0)return 0; return( ); void main() int m; char s120,s220; scanf(%s,s1); scanf(%s,s2); m= ; printf(the result is:%dn,m); 四、填空题(每空1分,共10分) 1、在C 语言中,C 程序的基本构成单位是 。一个C 程序至少有且只有一个 。 2、设int a=12; 则表达式a*=a+a 的值是 。 3、表达式x=

24、(a=3,6*a)和表达式x=a=3,6*a 分别是 表达式和 表达式。 4、int *p5; 定义的p 是一个 。 5、数组名作函数参数时,从实参到形参传递的值是 。 6、设a=3, b=4, c=5,则表达式 a|b+c&b-c 的值是 。 7、函数feof 的作用是 ;打开方式是“w”表示的是 。 五、编程题(共29分,分别9分、10分、10分) 1、有一个四位正整数a。如果将a 的各个数字逆序存放得到另一个四位数b,即:b 的千位、百位、十位、个位分别是a 的个位、十位、百位、千位。已知:满足9a=b。求这个四位数a。 2、对一个字符串,编写程序实现,循环左移长度的一半(如果长度n 是

25、奇数,则移动(n-1)/2)。例如: 如果字符串是: ABCDEFGH 则循环左移后的结果是: EFGHABCD 如果字符串是: ABCDEFGHI 则循环左移后的结果是: EFGHIABCD 3、10 个学生,5 门课程的考试成绩,编写一个处理函数,统计每门课程不及格学生的人数。在主函数中输入所有成绩,调用处理函数,输出结果。 模拟题A 答案 一、选择题(每题2分,共20分) D C D B C B A A D C 二、读程序写结果(每题3分,共21分) 1、15 60 2、a=1,b=2 3、8 4、1 3 1 8 5、64 6、6,5,6 7、9 三、程序填空(每空2分,共20分) 1、

26、 f=1 Fibonacci(8) 2、 p=mn?n:m m%p!=0|n%p!=0 3、 in k=i sort(x,10) 4、 0 *(p1+i)-*(p2+i) compare(str1,str2) 四、填空题(每空1分,共10分) 指数形式 double 型 0 逗号(,) 赋值 指向一维数组的指针变量 数组的首地址 流式文件 关闭文件 二进制只读文件 五、编程题(共29分,分别9分、10分、10分) 1、有一个四位正整数x。如果将x 的各个数字逆序存放得到另一个四位数y,即:y 的千位、百位、十位、个位分别是x 的个位、十位、百位、千位。已知:满足x=9y。求这个四位数x。 参考答案: #includestdio.h void main() int x,y,a,b,c,d; for(a=1;a=9;a+) for(b=0;b=9;b+) for

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1