C语言(数组)

 1.数组

 <类型> 变量名称[元素数量]

元素数量必须是整数例如:int grades[100]

(我们需要主动初始化数组)-数组是一种容器,特点是:其中所有的元素具有相同的数据类型;一旦创建,不能改变大小;

数组中的元素在内存中是连续依次排列的;

数组的每个单元就是数组类型的一个变量

使用数组时放在[ ]中的数字叫做下标或索引,下标从0开始计数

 例子:输入数量不确定的[0,9]范围内的整数,统计每一种数字出现的次数,输入-1表示结束```cint main(){ int i; int num[10]={0}; scanf("%d",&i); while(i!=-1){ if(i>=0&&i<=9){ num[i]++; } scanf("%d",&i); } for(i=0;i<10;i++) { printf("%d出现了%d次\n",i,num[i]); } return 0;}```

 2.函数的定义和使用

函数是一块代码,接受零个或多个参数,做一件事情,并返回零个或一个值。

函数定义:

函数头:返回类型 函数名称(参数表)

函数主体:包括一组定义函数执行任务的语句调用函数  函数名(参数值)

()起到了表示函数调用的重要作用

即使没有参数也需要()

如果有序数,则需要给出正确的数量和顺序- 这些值会被按照顺序依次用来初始化函数中的参数

从函数中返回值

return停止函数的执行,并送回一个值

return;

return 表达式;

一个函数可以出现多个return语句(不好,但可以这么做)

没有返回值的函数

- void 函数名(参数表)

- 不能使用带值的return

- 可以没有return

- 调用的时候不能做返回值的赋值

3.函数的参数和变量

函数声明会告诉编译器函数名称及如何调用函数。函数的实际主体可以单独定义。

函数声明包括以下几个部分:

返回类型 函数名称(参数表) ;

当您在一个源文件中定义函数且在另一个文件中调用函数时,函数声明是必需的。在这种情况下,您应该在调用函数的文件顶部声明函数。

参数传递

 调用函数- 如果函数有参数,调用函数时必须传递给它数量、类型正确的值。

可以传递给函数的值是表达式的结果,这包括: - 字面量

- 变量

- 函数的返回值

- 计算的结果

传值

- 每个函数有自己的变量空间,参数也位于这个独立的空间中,和其他函数没有关系

- 过去,对于函数表中的参数,叫做形式参数,调用函数时给的值,叫做实际参数(现在不咋用)

- 我们认为他们是参数和值的关系

本地变量

- 定义在函数内部的变量就是本地变量

- 参数也是本地变量

本地变量的规则

- 本地变量定义在块内(块就是大括号)

- 生存期和作用域在大括号内

- 不能在一个块内定义同名变量

- 本地变量不会初始化

- 参数在进入函数时会被初始化void swap( )尽量不要这样写,如果没有参数,可以写成void swap(void)

- 调用函数时的圆括号里的逗号是标点符号,不是运算符

- f(a,b) 这里的逗号为标点符号 f((a,b))这里的逗号为运算符

C语言不允许函数嵌套定义

数组的大小- sizeof给出整个数组所占据的内容的大小,单位是字节sizeof(a)/sizeof(a[0])

数组的赋值

数组变量本身不能被赋值

要把一个数组的所有元素交给另一个数组,必须采用遍历

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值