函数
#include <stdio.h>
int main()
{
int a = 0;
int b = 0;
int sum = 0;
scanf("%d %d", &a, &b);
sum = a + b;
printf("sum = %d\n",sum);
return 0;
}
这是之前第二天的一段求和代码,但这不是函数的解决方法。
#include <stdio.h>
int Add(int x,int y)
{
int z = 0;
z = x + y;
return z;
}
int main()
{
int a = 0;
int b = 0;
scanf("%d %d",&a,&b);
int sum = Add(a,b);
printf("%d\n",sum);
return 0;
}
上面使用函数的方法解决的求和,与第一种不同的是,引入了新函数来解决这个问题,新函数 Add 就相当于一个委托人,把输入进去的 a 和 b 委托给他,然后经过一系列操作返回给 sum 进而通过 printf 打印得到结果。
这中间的一系列操作即是 int Add(int x,int y) 这一段代码实现的。首先 Add 接收的是两个整数,在 x,y 前加上 int 的整数类型,其次为得到相加的结果,要创建一个变量 z 用于存储,并且定义 z = x + y ,得到 z 后要把结果返回给 sum 所以 return z ,这时得到的 z 也应是整数,要注意在 Add 前加上 int 整数类型。
对比两段代码可以发现,用函数解决求和问题代码会更长一些。但如果多次使用求和,使用函数就可以直接引用,不必再从新写一遍。这就好比在写字楼中工作需要送文件,第一种方法是自己去送,日复一日,一天送7.8回。而函数的方法是造了一个机器人,需要时直接使用,让他帮自己去送。这两种方法的区别就显而易见了,合理的使用函数可以有效的降低代码的非必要成分,达到更加简洁的目的。
=========================================================================
数组
当想要存放多个变量时不使用数组想必就要这样:
int a = 1;
int b = 2;
int c = 3;
int d = 4;
......
非常的繁琐,而数组就可以很好的解决。
数组是一组相同类型元素的集合。如存放整数1~10:
int arr[10] = {1,2,3,4,5,6,7,8,9,10};
中括号中的 10 是集合中元素的总数,arr 是集合的命名,int 是集合的类型。
类型 + 名字[元素总数] = { (元素之间逗号隔开) };
#include <stdio.h>
int main()
{
char ch[5] = {'a','b','c'};
return 0;
}
字符类型的也是同理,当出现上述情况,填入的元素没达到总数,这种情况称为不完全初始化,剩余的默认为0。
需要注意的是集合中每个元素都有下标,相当于每个元素的编号,下标从0开始计数,如上边的字符'a'的下标就是 0 ,字符'c'的下标就是 2 。这也就是说当写出 arr[2] 时访问的其实是第三个元素,写出 arr[9] 时访问的是第十个元素。
#include <stdio.h>
int main()
{
int arr[10] = {1,2,3,4,5,6,7,8,9,10};
int i = 0;
while (i < 10)
{
printf("%d",arr[i]);
i++;
}
return 0;
}
当我们想要把每个元素都打印出来,也就要产生下标0~9,设置一个变量 i 表示下标,即 i < 10 ,用昨天提到的 while 循环就可以实现。