(11)C语言——函数-创新互联
为什么在C语言中需要使用函数?函数的意义时什么?
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、网络空间、营销软件、网站建设、确山网站维护、网站推广。函数能够将程序模块化,避免重复使用的代码,更加方便简洁
1.函数的定义:
函数类型 函数名(数据类型1 形参1, 数据类型2 形参2)(可以写多个数据类型和形参)
{
语句块;
return 返回值;(返回值与函数类型不一致时,将返回值类型转为函数类型返回,返回值类型不写默认为int类型)
}


2.函数的调用
函数名(实参1, 实参2);(可以写多个实参)
函数的实参和形参一一对应
函数传参:实参将值拷贝给形参,实参与形参类型不一致时,函数将实参类型转换为形参类型
3.函数的声明
如果被调函数的定义再主调函数的下方,则需要对被调函数声明


声明表示该空间已经被开辟,而定义才是需要开辟空间
全局变量:(下图c为全局变量)
局部变量:(a,b,num,n为局部变量)

全局变量的作用域:在整个文件中都能使用
局部变量的作用域:离定义该变量最近的大括号内
4.函数的传参:
1.复制传递=赋值传递:实参将值拷贝给形参,实参和形参独立空间,形参的任何改变不会影响实参
函数体内部对形参做任何改变都无法改变实参的值,函数体内只能使用函数体外部变量的值,而无法改变变量的值
5.数组作为函数参数:
int a[5];
int add(int a[5]);
int add(int a[], int len);//len表示数组的长度
调用时:add(a,5)//5为数组的长度
练习:
1从终端接收两个数,打印这两个数加减乘除四则运算的结果,要求封装4个函数实现
(提醒:可以return a + b ;等,不同像我一样再定义一个局部变量,因为都为int 类型,所以100/200则为0)


2.从终端接收一个数,封装一个函数判断该数为奇数还是偶数(提醒:函数开头为void,并不用返回数字所以可以不用int类型)


3.封装三个函数接口实现冒泡排序(提醒:整型数组中使用过冒泡排序和解释):
1.Input 负责从终端接收数据到数组中
2.Sort 负责对数组进行冒泡排序
3.Output负责将数组元素打印



4.封装一个函数实现对传入数组实现倒置(提醒:整型数组中使用过倒置排序和解释)


5.从终端接收年-月-日到三个变量中,
(1)封装一个函数判断该年是否为闰年?(提醒:400年一润,是4的倍数但不是100的倍数也是一润)
(2)封装一个函数传入年-月-日信息获得该天为该年的第几天?(提醒:判断是否为闰年后,二月的天数不一样,一年时间不一样)
(3)封装一个函数获得该年剩余多少天?



你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
当前文章:(11)C语言——函数-创新互联
转载注明:http://pcwzsj.com/article/csepgi.html