美文网首页
C语言笔记[TOC]

C语言笔记[TOC]

作者: Zhkong | 来源:发表于2017-04-09 14:57 被阅读0次

1、条件语句

1. a>b?a:b


#include
int main()
{
int a=2,b=3;
printf("%d",a>b?a:b);   //输出结果是3
return 0
}

如果a>b则输出a,反之输出b

2、数组

数组元素作为函数参数

1.数组元素作为函数实参

数组元素可以作为函数实参,不能作为函数形参,因为形参实在函数被调用的时候临时分配存储单元的,不可能作为一个数组元素单独分配存储单元。
例:输入5个数,求出最大值


#include
int main()
{
int a[5], i, max;
for (i = 0; i < 5; i++)
scanf("%d", &a[i]);
for (i = 0; i < 4; i++)
max = a[i] > a[i + 1] ? a[i]:a[i + 1];
printf("The max number is %d\n", max);
return 0;
}

2.数组名做函数参数

​ 除了数组元素可以做函数参数外,数组名也可以做函数参数(包括实参和形参);注意:用数组元素做实参是,向形参变量传递的是数组元素的值,而用数组名作为函数实参的时候,向形参(数组名或指针变量)传递的是数组首元素的地址

例:求数组a[3] = { 1.1,2.2,3.3 }和数组b[5] = { 1.1,2.2,3.3,4.4,5.5 }的平均值。


#include
int main()
{
float avg(float array[], int n);
float a[3] = { 1.1,2.2,3.3 }, b[5] = { 1.1,2.2,3.3,4.4,5.5 };
printf("%7.2f", avg(a, 3));
printf("%7.2f", avg(b, 5));
system("pause");
return 0;
}
float avg(float array[], int n)
{
int i;
float sum = 0;
for (i = 0; i < n; i++)
sum += array[i];
return sum / n;
}

注:

①这里 printf("%7.2f", avg(a, 3)) ;里面用的是数组名a,而不是用数组a[3];

②形参数组可以不指定大小,在定义素组时后面跟一个方括号'[ ]';

③第3行 float avg(float array[], int n);为函数的声明,如果定义的函数在main函数后面就要声明,否则就把定义的函数写在main函数前面,防止出错。

相关文章

网友评论

      本文标题:C语言笔记[TOC]

      本文链接:https://www.haomeiwen.com/subject/omcdnttx.html