数组是包含给定数据类型的以一组相同数据类型的集合。
int main()
{
int ar[10]={12 ,23 ,34 ,45 ,56 ,67, 78 ,89 ,90 ,100};
// 第 0 1 2 .....位 在内存中的存储是连续的,12后面是23后面是34
for (int i = 0 ;i < 10 ;i++); //int 可以在循环前写,也可以这样写
{
printf ("%d" , ar[i]);
}
printf("\n");
return 0
}
模块或子程序就是函数,通过函数将复杂任务分解成若干个小任务,细化到模块的的功能是单一的
定义函数的语法:函数返回类型 函数名 (形参列表) {函数体}
float TriangleArea (float a, float b ,float c) /*后面不加分号 float 是返回类型 TriangleArea 是函数名 a,b,c 前面必须加类型名,不能写成float a,b,c */
{
float p = (a + b + c )/2;
float s = sqrt (p * (p - a)*(p - b)*(p - c));
return s;
}
int main ()
{
float x, y ,z;
float s ;
scanf ("%f %f %f" , &x ,&y ,&z);
s= TriangleArea(x ,y ,z);
printf ("s = %f\n" , s);
return 0;
}
float TriangleArea (float a, float b ,float c) 这个是函数的定义
float TriangleArea (float a, float b ,float c); 这个是函数的声明
声明不关心返回类型,函数名,而关心名称(a,b,c 写成什么字母对后面都没影响)
上面这个函数当int mainhan函数放在前面时,编译会不通过,因为TriangleArea 函数的定义是放在后面的,也就是TriangleArea函数出现时,还未定义,因此编译不通过。
c语言总是从main主函数开始执行,但是是从上而下开始编译。