网站大量收购闲置独家精品文档,联系QQ:2885784924

c语言 函数应用.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言 函数应用

福 建 工 程 学 院 课程设计 课 程: 高级语言课程设计 _ 题 目: 第一组第六题函数应用 专 业: 信管 _ 班 级: _ 学 号: _ 姓 名: _ 一、需求分析 题目:函数应用 编写主函数和func函数,函数func的功能要求是:func( int a[], int b[], int na, int *nb ),其中 a 数组有 na个元素(均为正整数)。函数 func的功能是:找出 a 数组元素中所有偶数存入 b 数组中,在 nb 所指的单元中存入这些偶数的个数,并由小到大对b数组元素排序。 (数组下标从 0 开始,不能改动 a 数组元素的值)。 例如:a 数组为:11, 13, 14, 12, 15, 16, 18, 19, 17, 110; 则调用函数 fun4 后 b 数组为:12, 14, 16, 18, 110; 且 *nb 的值为:5(即 b 数组共存入了5个元素)。 分析:此题目要求设计函数func(),使其达到将一个数组中的偶数转存到另一个数组中,从大到小排序输出,并记录偶数个数输出。 二、总体设计 设计函数func(),需要用if语句判断原数组的每一项是否为偶数,若为偶数存入另一个数组,并用指针计数,将新的数组进行从大到小排序,可采用冒泡排序法。 Func函数 三、详细设计 Func()函数的功能是将原数组的偶数挑选出来,放入另一个数组,输出这个数组,并输出这个数组的元素个数。其中a[]表示原数组,b[]表示要存放偶数的数组,na表示a[]的元素个数,*nb要记录b[]的最终元素个数。 四、程序运行结果与分析 五、编码 void func(int a[],int b[],int na,int *nb) { int i,j=0,k,t; /* i此次表示数组的下角标,t用于两数交换*/ for(i=0;ina;i++) /*这个循环是将a[]的偶数赋值给b[]*/ {if(a[i]%2==0) { b[j]=a[i]; j++; } } *nb=j; for(i=0;i*nb-1;i++) {k=0; /*设为交换标志*/ for(j=0;j(*nb-i-1);j++) if(b[j]b[j+1]) {k=1; t=b[j]; b[j]=b[j+1]; b[j+1]=t; } if(!k) break; /*没有交换,已排序*/ } for(i=0;i*nb;i++) printf(%4d,b[i]); } main() {int a[10]={11,13,14,12,15,16,18,19,17,110},b[20],p,i; printf(原数组:); for (i=0;i10;i++) printf ( %d,a[i]); printf(\n新数组:); func(a,b,10,p); /*函数的调用,并将*nb值赋给p */ printf(\n存入的偶数个数: %d,p); } 六、结论于心得 在程序调试过程中出现指针在函数中的应用,在调用函数后,不知如何输出指针的值,通过翻书、问同学解决。了解到指针与函数的重要性,应灵活应用。 结束 输出: 新数组 func(a,b,10,p) p i++ 输出 a[i] i10 i=0 输入 a[10]={11,13,14,12,15,16,18,19,17,110},b[20],p,i 开始 结束 i++ 输出 b[i] i*nb i=0 i++ break !k Y j++ k=1 j(*nb-i-1) j++ k=0 N N i*nb-1 i=0 *nb=j Y i++ b[j++]=a[i] Y a[i]%2=0 ina i=0 输入i,j=0,k,t 开始 N N N N Y Y Y Y

文档评论(0)

精华文库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7111022151000002

1亿VIP精品文档

相关文档