C语言学习复盘整理笔记(六)

这篇笔记详细介绍了C语言中的数组概念,包括数组的定义、使用和数组的越界问题。此外,还深入讲解了函数的定义、调用、参数传递、本地变量以及生存期和作用域。强调了在C语言中函数参数传递是按值传递,本地变量的生存期和作用域仅限于函数内部。
摘要由CSDN通过智能技术生成

第六周:程序设计与C语言

C语言学习笔记

本系列笔记是学习复盘慕课上浙江大学 翁恺老师《程序设计入门-C语言》课程的笔记和一些自己的总结。(文章的部分截图来自课程视频截图)

课程链接:https://www.icourse163.org/learn/ZJU-199001?tid=1206771253#/learn/content

6.1数组

数据可以存放在变量里,每一个变量有一个名字,有一个类型,还有它的生存空间。如果我们需要保存一些相同类型、相似含义、相同生存空间的数据,我们可以用数组来保存这些数据,而不是用很多个独立的变量。数组是长度固定的数据结构,用来存放指定的类型的数据。一个数组里可以有很多个数据,所有的数据的类型都是相同的。

6.1.1初试数组

EG1:如何写一个程序计算用户输入的平均数?输入-1代表输入结束。

不需要记录输入的每一个数;计算sum然后除法

变相:

EG2:且输出所有大于平均数的数?

需要记录读入的所有数。

 

使用数组的常见步骤:

定义数组---赋值数组---遍历数组(使用数组中的元素)

问题:使用的元素个数会不会超过数组的长度呢?

 

6.1.2定义数组

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

  1. 元素数量必须是整数
  2. C99之前:元素数量必须是编译时刻确定的字面量(二级考试),不能是变量,不能是动态的程序运行过程中产生的数字。
  3. 数组是一种容器(放东西的东西),所有的元素具有相同的数据类型;一旦创建,不能改变大小;数组中的元素在内存中是连续依次排列的。
  4. 数组中的单元可以出现在复制号的左边或者右边;在赋值号左边的叫做左值。

 

有效的下标范围:

  1. 编译器和运行环境都不会检查数组下标是否越界,无论是对数组单元做读还是写
  2. 一旦程序运行,越界的数组访问可能导致问题,导致程序崩溃。

Segmentation fault

Int a10】,其实最大的下标是9,不可以对a10=2进行复制。

6.1.1节中我们的代码是危险的,因为输入的数据可能超过100个。

解决方案一:读满100

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值