函数参数与结构体练习ppt课件.ppt

函数参数与结构体练习ppt课件.ppt

ID:60803099

大小:228.00 KB

页数:29页

时间:2020-12-19

函数参数与结构体练习ppt课件.ppt_第1页
函数参数与结构体练习ppt课件.ppt_第2页
函数参数与结构体练习ppt课件.ppt_第3页
函数参数与结构体练习ppt课件.ppt_第4页
函数参数与结构体练习ppt课件.ppt_第5页
资源描述:

《函数参数与结构体练习ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2.为什么会出现if-else不匹配?这种错误的原因可能比较复杂;总的原则是:(1)有一个else必有一个if,所以首先在数量上要匹配(2)逻辑关系要合理;若执行的是复合语句,不要漏掉复合语句标志{}。例如:if(x

2、问题-if语句C程序中常见问题-定长数组与变长数组定义定长数组:inta[5];变长数组:intn;inta[n];定义数组并初始化数组元素:inta[5]={1,2,3,4,5};访问数组元素(写、读):for(i=0;i<5;i++)a[i]=i*2;for(i=0;i<5;i++)printf("%d",a[i]);变长数组:intn=20;inta[n];C99标准规定:定义数组时,其尺寸可以不确定,但不是所有的编译器都支持该特性关于函数函数是具有名字的语句序列,使用函数可改善程序的结构,也用于将多处重复使

3、用的代码编写为函数,减少代码量函数定义和函数调用形式参数与实际参数参数传递实际参数向形式参数传值实参与形参个数相等,类型一致,按顺序一一对应函数的返回值局部变量与全局变量变量的作用域与生存期staticextern#includelongsum(inta,intb);longfactorial(intn);voidmain(){intn1,n2;longa;scanf("%d,%d",&n1,&n2);a=sum(n1,n2);printf("a=%1d",a);}longsum(inta,int

4、b){longc1,c2;c1=factorial(a);c2=factorial(b);return(c1+c2);}longfactorial(intn){longrtn=1;inti;for(i=1;i<=n;i++)rtn*=i;return(rtn);}longsum(inta,intb);longfactorial(intn);文件包含编译预处理命令函数原型说明函数定义函数调用函数调用函数返回值形参实参函数参数数组作为函数参数结构体数据作为函数参数传值调用函数调用执行时,将实际参数的值传递给形式参数,这

5、个传递过程是单向的voidswap(intx,inty){intt;t=x;x=y;y=t;}intmain(){inta,b,c;a=3;b=8;c=2;if(a>b)swap(a,b);if(a>c)swap(a,c);if(b>c)swap(b,c);printf("%d%d%d",a,b,c);return0;}传值调用函数调用执行时,将实际参数变量的地址传递给形式参数voidswap(int*x,int*y){intt;t=*x;*x=*y;*y=t;}main(){inta,b,c;a=3;b=8;c=

6、2;if(a>b)swap(&a,&b);if(a>c)swap(&a,&c);if(b>c)swap(&b,&c);printf("%d%d%d",a,b,c);}数组作为函数参数数组作为参数有两种形式数组元素作为实参,与一般变量相同;形参为数组,实参为数组名intnum[5]={79,11,27,26,43};num[4]num[2]num[3]num[0]num[1]7911272643数组元素是一个变量数组元素作为函数参数数组元素等同于一个一般变量,作为实参时,是将数组元素的值传给形参voidchange(

7、intx){printf("before:%d",x);x=x+10;printf("after:%d",x);}intmain(){inti;intnum[6]={43,18,9,13,55,7};change(num[2]);for(i=0;i<6;i++)printf("%dt",num[i]);return0;}数组名作为函数参数数组名可以作为实参,传递的是数组空间的首地址inti,j,temp,a[5]={43,18,9,13,55};for(i=0;i<4;i++){for(j=0;j<4-i

8、;j++)if(a[j]>a[j+1]){temp=a[j];a[j]=a[j+1];a[j+1]=temp;}/*endif*/}/*endfori*/voidsort(inta[],intn)/*数组a的尺寸为n*/{inti,j,temp;for(i=0;ia[j+1]){te

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

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

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