一.函数
定义:和数学上的概念非常相似,输入一些数据,返回一些结果。
#include<stdio.h>
#include<string.h>
int main(){
//实现一个程序,完成两个整数的相加
int a=0;
int b=0;
printf("请输入a和b的值:");
scanf("%d %d",&a,&b);
int c=a+b;
printf("c=%d\n",c);
system("pause");
return 0;
}
//在使用scahf时千万不要忘记要给程序最开头加上个#define _CRT_SECURE_NO_WARNINGS捏
emmm,问题又要来了......
此处提出一个问题:如果要执行多次"c=a+b"这条语句时该怎么办?
在这个时候,若是只用执行几次还好,但是要执行多次时就会特麻烦,所以此时引入一个数学函数会是代码变得非常简单.
#include<stdio.h>
#include<string.h>
//函数定义的时候,参数x y叫做形式参数(形参)
int Add(int x,int y){
printf("x=%d\n",x);
printf("y=%d\n",y);
return x+y;
}
int main(){
//实现一个程序,完成两个整数的相加
int a=0;
int b=0;
printf("请输入a和b的值:");
scanf("%d %d",&a,&b);
//int c=a+b;
//在执行Add函数之前,a->10 b->20
//函数调用的时候,填的是10和20叫做实际参数(实参)
int sum=Add(a,b);
printf("c=%d\n",c);
system("pause");
return 0;
}
函数的特点就是实现代码复用,以此来达到简化代码的目的。
二.数组
在C语言中数组的定义为:一组相同类型元素的组合。
#include<stdio.h>
int main(){
int arr[10]={1,2,3,4,5,6,7,8,9,0};
//通过[]的方式取出数组中的第N个元素(从0开始计数)
printf("%d\n",arr[0]);
printf("%d\n",arr[9]);
system("pause");
return 0;
}
如果要将数组中的元素一一打印出来该怎么办?
使用一个循环即可,我们下面使用的是while循环。
#include<stdio.h>
int main(){
int arr[10]={1,2,3,4,5,6,7,8,9,0};
//通过[]的方式取出数组中的第N个元素(从0开始计数)
//N称为“数组下标”(“数组索引”)
int index=0;
while(index<10){
printf("%d\n",arr[index]);
//index=index+1;
index+=1;
}
//当执行下边这个语句时会出现什么情况?
printf("%d\n",arr[100]);
//运行结果为0
//访问数组下标时,必须保证下标在有效范围之内[0,size]
//如果下表超出了合法范围,此时程序就是“未定义行为”(Undefined Behavior)(UB)
//写任何代码的时候都不要依赖未定义行为!!!!(例外:外挂or病毒)
system("pause");
return 0;
}