《C语言程序设计》上机报告11

《C语言程序设计》上机报告11

ID:42057387

大小:153.56 KB

页数:6页

时间:2019-09-07

《C语言程序设计》上机报告11_第1页
《C语言程序设计》上机报告11_第2页
《C语言程序设计》上机报告11_第3页
《C语言程序设计》上机报告11_第4页
《C语言程序设计》上机报告11_第5页
资源描述:

《《C语言程序设计》上机报告11》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、上机们函数(3)上机课时课内:2课时;课外:2课时上机类型验证性上机上机目的1.掌握C语言中数组作为函数参数的使用。2.掌握C语言函数中的局部变量和全局变量的使用。上机内容1.数组作为函数参数前面我们学过,变量可以当作函数参数是吧?本次上机我们学习数组当做函数的参数,啊?什么?数组咋当参数?请看下面知识。数组作为函数的参数又分为两种情况,一是数组中的某个元素当作函数的参数;二是整个数组当作函数的参数。(1)数组中的元素当作函数参数一1传递数组中的元素当作实参,将值传递给形参。(2)整个数组(数组名)当作函数参数地址传递数组名当作实参,将地址传递给形参。数组作为函数参数时还要注意以

2、下事项:>数组元素作为函数实参传递时,数组元素类型必须与形参数据类型一致。>数组名作为函数实参传递时,函数定义处作为接收参数的数组类型形参既可以指定长度也可以不指定长度。下面我们用一个表格总结如下:比较数组元素作为函数实参数组名作为函数实参传递方式程序示例值传递地址传递挣includevoidtemp(intarrValue){printf(,,%d,arrValue);}intmain()医*适{intarr[5]={1,2,3,4,5};temp(arr[3]);return0;}#includevoidtemp(intarr[])t

3、{inti;for(i=0;i<5;i++){printf(-%d",arr[i]);}/}intmain()/{intarr[5]={1,2,3,4,5};temp(arr);return0;}内存情况实参形参数组arr变量airValue01■41223'值传递34丿45实参龜形参特点名字不同,变量不同,地址不同名字相同,变量不同,地址相同上机任务1任务要求:比较两个数组的大小的算法定义如下:a和b为有10个元素的整型数组,比较两数组对应元素,变量n,m,k分别记录a[i]>b[i],a[i]=b[i],a[i]k,认为数组a>b若n〈k,认

4、为数组a〈b若n二二k,认为数组a二二b。要求用数组元素作为函数实参完成上述要求。上机任务2任务要求:定义3个浮点型数组用来存放学生的成绩,要求用数组名作为函数参数,求这三组学生的平均成绩。提示:定义一个求平均成绩的函数,一次定义,三次调用。1.C语言函数的局部变量和全局变量C语言中的变量,按作用域范围可分为两种,即局部变量和全局变量。局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内,离开该函数后再使用这种变量是非法的。在复合语句中也可定义变量,其作用域只在复合语句范围内。全局变量也称为外部变量,它是在函数外部定义的变量。它不属于哪一个函数,它属于一个

5、源程序文件。其作用域是整个源程序。#include/*定义全局变量X♦/intx»1;/*定义函数fnl*/intfnl(intx){/♦函数中的均为局部变量♦/inty,z;z=2;y=x+z;.printf("y=%d"・y);return0;}intmain(){fnl(2);〃这里输出尸4inty=10;//定义局部变重y/*输出局部变量y和全局变量x的和*/printfC^x+y^",y+x);〃输出return0;}上机任务3任务要求:下面这段代码分别定义了全局变量intx=77和局部变量intx=10;期望的运行结果是:辻语句fLx=50mai

6、r^法內$x=10frd():x=77修改程序代码,使其结果和期望运行结果一样。#includeintx=77;voidfnl()567891011121314151617181920}intTprintf(Mfnl():x=%dMJx);main()intx=10;if(x>0)x=100;x/=2;printf(wif语句內,x=%dMJx);}printf("main方法内,x=%d"Jx);fnl();return0;上机任务4任务要求:分析下面程序,说明程序错误的原因,并找到解决办法。9#includeintexchang

7、e(intx,inty)〃函数定义:交换喇的值]{.inttemp;temp二x;x=y;y=temp;-}intmain()intx二5j二3;prmtf("befor:x=%d,y=%d",x,y);〃交套舒轴出x•和yexchanged』);〃函数谒用pnntf("after:x=%d,y=%dBlxly);〃交黄后编出x•和y〃交養成功了吗?什么原因呢?return0;}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。