学习数组和函数所遇到的问题

1.数组下标的含义是什么?是否一定是从0开始?
答:数组下标的含义是数组所要占用的空间的大小。在不同的语言下,下标值的开始值不一定相同,可以从0开始,也可以从1开始。
2.遍历数组元素的方法有几种?哪种方法更有效率?为什么?
有两种。方法一:
for(i = 0; i < MAX; i++)
{
x = a[i];
/* …. */
}
方法二:
for(p = a; p < &a【MAX】; p++)
{
x = *p;
/* */
}
方法二更好。因为方法一要进行乘法运算,方法二只需要引用指针。
3.数组的要素是什么?假设一个数组的数组名是a,那么a和&a有什么不同?
答:数组的三要素是基本类型,大小,数组的值。
a的意思是数组里面首元素的地址。
&a的意思是整个数组在内存中的地址。
虽然用指针指向上面两个地址时,结果是相同的。但是所表示的内容是不同的。
4.字符串和数组的分别:
答:字符串有特定的规格和大小,数组长度不确定,大小不确定。数组里的元素可以是字符串。
5.构成函数的要素:函数名,函数形参,函数返回值,函数体。
6.函数形参的传递:
变量,数组元素,指针变量,数组名,结构体。
7.函数运行的步骤:
1. 通过函数名找到函数的入口;
2. 给函数形参分配空间
3. 传参;
4. 执行函数体里面的语句
5. 函数返回;
6. 释放空间;
8.函数传参时的选择:
当要修改实参变量对应空间的值,传实参变量的地址;
当只使用而不修改实参变量空间的值,传实参变量名
9.形参和实参的区别:
形参出现在函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用。
实参出现在主调函数中,进入被调函数后,实参变量也不能使用。
形参和实参的功能是作数据传送。发生函数调用时, 主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。
10.printf函数的用法。
printf是行缓冲,别写程序时要加上\n(特殊情况除外),当多个printf共同作用时可能出现问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值