教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教学研究 >

[新]C语言期末复习,经典练习题+知识点总结+模拟考题。三位一体,(5)

来源:网络收集 时间:2026-04-28
导读: 考试注意点: 括号在这里的重要性。 第五章 函数:是具有一定功能的一个程序块; 1) 函数的参数,返回数值(示意图): main() { int a = 5,b=6,c; c = add(a,b); printf(“%d”,c); } 调用函数 a,b是实参 整个函数

考试注意点: 括号在这里的重要性。¬ ¬

第五章¬

函数:是具有一定功能的一个程序块;¬ 1) 函数的参数,返回数值(示意图):¬ main()¬ {¬

int a = 5,b=6,c;¬ c = add(a,b);¬ printf(“%d”,c);¬ }¬ ¬

调用函数¬ a,b是实参¬

整个函数得到一个数值就是¬ Add函数的返回数值。¬ int add ( int x, int y)¬ {¬ int z;¬ z=x+y;¬ return z;¬ }¬

被调用函数¬

x,y是形式参数¬ 函数返回数值是整型¬ ¬

z就是这个add函数计算后得到的结果,就是函数返回给主程序的返回数值。- 程序是在从上往下顺序执行,当碰到了函数add后,把a,b的数值穿给调用函数,程序暂时中断等待返回数值。当得到了返回数值后,再顺序的往下执行¬

2)一定要注意参数之间的传递¬

实参和形参之间传数值,和传地址的差别。

18 / 30

(考试的重点)¬ 传数值的话,形参的变化不会改变实参的变化。¬

传地址的话,形参的变化就会有可能改变实参的变化。¬

3)函数声明的考查:¬

一定要有:函数名,函数的返回类型,函数的参数类型。¬

不一定要有:形参的名称。¬ ¬

第六章¬

指针变量的本质是用来放地址,而一般的变量是放数值的。¬

int *p 中 *p和p的差别:¬

*p可以当做变量来用;*的作用是取后面地址p里面的数值¬

p是当作地址来使用。¬

*p++ 和(*p)++的之间的差别:改错题目中很重要¬

*p++是地址会变化。¬

(*p)++ 是数值会要变化。 ¬ 三名主义:(考试的重点)¬

数组名:表示第一个元素的地址。数组名不可以自加,他是地址常量名。(考了很多次)¬

函数名:表示该函数的入口地址。¬

字符串常量名:表示第一个字符的地址。¬ ¬

第七章¬

1一维数组的重要概念:¬ 对a[10]这个数组的讨论。¬

1、a表示数组名,是第一个元素的地址,也就是元素a[10]的地址。¬

2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。¬

3、a是一维数组名,所以它是列指针,也就是说a+1是跳一列。 ¬ 对a[3][3]的讨论。¬

1、a表示数组名,是第一个元素的地址,也就是元素a[10]的地址。¬

2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。¬

3、a是二维数组名,所以它是行指针,也就是说a+1是跳一行。¬

经典练习题+知识点总结+模拟考题。三位一体,完胜c语言!!!!{考期必备神器}。。。

4、a[0]、a[1]、a[2]也都是地址常量,不可以对它进行赋值操作,同时它们都是列指针,a[0]+1,a[1]+1,a[2]+1都是跳一列。¬ 5、注意a和a[0] 、a[1]、a[2]是不同的,它们的基类型是不同的。前者是一行元素,后三者是一列元素。¬ 二维数组做题目的技巧:¬

如果有a[3][3]={1,2,3,4,5,6,7,8,9}这样的题目。¬

步骤一:把他们写成: 第一列 第二列 第三列 ¬

a[0]à 1 2 3 ->第一行¬ a[1]à 4 5 6 —>第二行¬ a[2]à 7 8 9 ->第三行¬

步骤二:这样作题目间很简单: ¬ *(a[0]+1)我们就知道是第一行的第一个元素往后面跳一列,那么这里就是a[0][1]元素,所以是1。¬

*(a[1]+2)我们就知道是第二行的第一个元素往后面跳二列。那么这里就是a[1][2]元素,所以是6。¬

一定记住:只要是二维数组的题目,一定是写成如上的格式,再去做题目,这样会比较简单。¬

数组的初始化,一维和二维的,一维可以不写,二维第二个一定要写¬

int a[]={1,2} 合法。 int a[][4]={2,3,4}合法。但int a[4][]={2,3,4}非法。¬ 二维数组中的行指针¬ int a[1][2]; ¬

其中a现在就是一个行指针,a+1跳一行数组元素。搭配(*)p[2]指针¬

a[0],a[1]现在就是一个列指针。a[0]+1 跳一个数组元素。搭配*p[2]指针数组使用¬ 还有记住脱衣服法则:¬

a[2] 变成 *(a+2) a[2][3]变成 *(a+2)[3]再可以变成 *(*(a+2)+3)- 这个思想很重要!¬ 学习

模拟试题:::: 一、 选择题

1、字符串"\\\'efg\'\\"的长度是:( ).

19 / 30

A、3 B、11 C、7 D、5

2、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、double B、不确定 C、int D、float

3、下列语句的结果是()。 main() { int j; j=3;

printf("%d,",++j); printf("%d",j++); }

A、3,3 B、4,4 C、3,4 D、4,3

4、逻辑表达式!(2-1)&&x||0的值是( ) A、1 B、0 C、3 D、2

5、int a=1,b=2,c=3; if(a>b)a=b; if(a>c)a=c; 则a的值为()。 A、3 B、2 C、1

D、不一定

6、执行语句 for(i=1;i++<4;); 后变量 i 的值是()。 A、3 B、5 C、4 D、不定

7、以下正确的描述是( ).

A、只能用continue语句来终止本次循环 B、switch语句中不能出现continue语句 C、在循环中break语句不能独立出现 D、goto语句只能用于退出多层循环

…… 此处隐藏:437字,全部文档内容请下载后查看。喜欢就下载吧 ……
[新]C语言期末复习,经典练习题+知识点总结+模拟考题。三位一体,(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/49816.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)