C语言笔记[TOC]

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语言中广泛使用的一种数据类型。 运用指针编程是C语言最主要的风格之一。利用指针变量可以表示各种数据结构; ...
    朱森阅读 3,509评论 3 44
  • 计算机二级C语言上机题库(南开版) 1.m个人的成绩存放在score数组中,请编写函数fun,它的功能是:将低于平...
    MrSunbeam阅读 6,506评论 1 42
  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 9,552评论 1 51
  • C语言函数(一) 谨记 短暂的人生中,注定有很多人陪伴着你度过,陪你一起欢呼,陪你一起伤心流泪,陪你一起走过一条又...
    长风留言阅读 2,319评论 1 7
  • 大雁南来北往 可真是为了觅食取暖 你 前途漫漫 心似茫茫 是什么催着你成长 又推着你去流浪
    陈谙馨阅读 246评论 0 0