计算机与程序设计语言class5函数_第1页
计算机与程序设计语言class5函数_第2页
计算机与程序设计语言class5函数_第3页
计算机与程序设计语言class5函数_第4页
计算机与程序设计语言class5函数_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

函数C语言——2023/3/3实验报告(纸质版)每次实验课内提交实验步骤写关键代码实验结果写运行结果实验小结写自己对本次实验的感受与收获实验材料(电子版)实验源码文件.h/.c/.cpp运行结果截图文件关于实验的说明2023/3/3回顾模块化程序设计思想采用“组装”的办法简化程序设计单一、独立功能的代码重用和互用函数把一段操作抽象出来,封装成独立实体C语言程序的基本单元标准库函数#include<头文件>满足库函数的调用规范4返回值类型

函数名

(参数列表)返回值类型说明函数运行结果的类型函数名表示函数的功能,是函数的代表()是函数的标识符参数列表规定函数需要从外部接收的参数类型、名称、顺序和个数intmain(void);//主函数main,返回一个整数,不需要任何参数voidmyswap(inta,intb);//函数myswap,实现交换两个整数,不返回结果floatmax2(floata,floatb);//函数max2,实现返回两个实数的最大值3大元素:请根据以下描述定义函数:

6函数声明(计划阶段,产生函数原型)Tellscompilername,parameter-listandreturntypeoffunction函数定义(定义阶段,产生函数体)return-value-typefunction-name(parameter-list)

{

//declarationsandstatements

}函数调用(使用阶段,产生函数结果)PassargumentGetresult函数原型即为规范函数必须先声明后使用3种形态:实例分解://函数原型:maximum返回三个浮点数中最大值floatmaximum(float,float,float);//求五个浮点数的最大值intmain(){//变量声明和输入

//两次调用maximum函数printf("Maximumis:%f",maximum(maximum(num1,num2,num3),num4,num5));return0;}//函数定义:通过三个数与标记量max的比较得到最大值

floatmaximum(floatx,floaty,floatz){floatmax=x;if(max<y)max=y;if(max<z)max=z;returnmax;}通过函数名调用,实参的类型、个数和顺序都与原型一致函数调用的返回结果可直接使用函数定义的头部和原型保持一致声明函数规范:返回值类型、函数名和参数列表形式return关键字后的变量类型与函数声明中返回值类型一致8传值:(复印件)CopyofdatapassedtofunctionChangestocopydonotchangeoriginalPreventunwantedsideeffectsvoidmyswap(intx,inty){inttmp=0;tmp=x;x=y;y=tmp;//通过临时变量,实现交换}intmain(){inta=2,b=3;printf("Beforeexchange:a=%d,,b=%d”

,a,b);myswap(a,b);printf("Afterexchange:a=%d,b=%d",a,b;

return0;}1种传参方式Beforeexchange:a=2,b=3Afterexchange:a=2,b=39C语言的参数机制称为值参数(简称值参)f内对a和b的操作与m和n没有任何关系值传递是个单向过程!实例练习:农场里的动物有多少农场主养了一些猪和鸡,忙乱中把它们混到了一块,一共20个头,56只脚,请你帮帮农场主,算算他养的猪和鸡各有多少?

分析:numP+numC=20;4numP+2numC=56;设计:穷举法Chickens:1Pigs:19Right:?Chickens:2Pigs:18Right:?。。。。。。Chickens:12Pigs:8Ending循环过程,我们可以不断的测试一对值,直到它满足题设条件实例练习:农场里的动物有多少//函数原型:solve,需要两个参数,头数和脚数voidsolve(floatheadnum,floatfootnum);//求农场里的动物个数intmain(){//变量声明和输入

solve(head,foot);//调用solve函数return0;}//函数定义:以鸡的个数为控制变量,穷举符合给定脚数的解决方案

voidsolve(floatheadnum,floatfootnum){intchickens,pigs;for(chickens=0;chickens<=headnum;chickens++){pigs=headnum-chickens;if((2*chickens+4*pigs)==footnum){printf("chickensis%d,pigsis%d\n",chickens,pigs);break;}}if(chickens>headnum)printf("Ithasnosolution\n");}

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论