cout输出数组_小开带你学C++Lesson 7 一维数组(2)

大家好,我是小开~

356c177f8cbf49b1f39a0301ff5251bb.png

封面图就是Linux创始人Linus Torvalds在2000年8月25日给linux-kernel邮件列表的一封邮件中提到的(别问我这个linux-kernel是啥,我也不知道)

能说算不上什么,有本事就把你的代码给我看看。

好了,废话不多说,进入正题。上次我将一维数组比喻为一列火车,那么我们应该如何定义一维数组呢?其实,和造火车有很多相似点。

int a[11]={0,1,2,3,4,5,6,7,8,9,10};

上面就是定义一维数组的方法了。和定义普通变量一样,先说明变量类型——整型(int),然后是他的名字——“a”。不同的是,我们要加上火车有几个车厢——有11个,在a后面紧跟上中括号,中括号里写上数组里可以容纳变量的个数。

在等号右边,则是这个“火车”每个车厢里装的东西,用大括号包起来,每两个变量值之间用逗号相连。(当然,你可以不写等号以及其后面的内容,单独定义数组,这和变量类似)

(小开还是想重复一遍,千万要在英语输入法里打符号!编译器可不认你的中文符号。)

上次小开说过, ”火车“的编号——也就是数组的下标是从0开始的,而我们通常并不会用编号为0的“车厢”(不是不可以用,只是从1开始更加容易理解罢了)因此我们会多定义一个“车厢”。像是这里,其实我们只要10个变量就够,但是因为有0号的存在,所以要定义11个变量。

那么在引用数组里的变量的时候呢?

其实也非常简单,举个例子:输出a[5];

printf("%d",a[5]);

或者给a[5]赋值:

a[5]=1;

放在if语句里当做条件:

if(a[5]>0) cout<<"Positive"<<endl;

想必你已经猜出来了如何引用数组里的变量了。没错!数组名+中括号+下标!下标是用来指明数组里对应的下标变量(也称为元素,可以去上一次的文章中的概念里去看),具有唯一性。

那么请大家想想看,如何将for循环与一维数组联合起来呢?

for循环中,有一个变量,会随着规定的规律变化——对!循环变量!而数组中的下标,通常会有非常多,也需要一个可以有规律变化的变量遍历这个数组!

那么把循环变量当做下标,这个主意是否可行?

for(int i=1;i<=10;i++)  //a[i]???

比方说,我们来解决一个问题:给a[10001]这个数组当中的下标变量,分别赋值1,2,3..10000。(从a[1]开始赋值,a[0]不管他,C++会自己给他赋值,有兴趣的同学自己可以试试看)

这个时候,显然不能直接在定义的时候赋值了,那么我们把它放在循环里试试看。

for(int i=1;i<=10000;i++) //下标从1到10000,循环变量对应也是1到10000  a[i]=i; //重点!a[i]赋的值本身也是不停变化的,和下标值完全相同。

瞧!本来需要用10000句小的赋值语句的问题,用for循环很轻松的解决了。这就是循环的优势——避免无用的劳动力,方便写程序,方便看程序,方便改程序。

下一个问题:输入并输出一个数组。

首先,先定义这个一维数组。

int a[11];

接着,用for循环把一个一个数字输入进去。

for(int i=1;i<=10;i++)  scanf("%d",&a[i]);

输出检验一下,程序是否达到我们想要的结果。

for(int i=1;i<=10;i++)  printf("%d",a[i]);

最后,收尾。

return 0;

Talk is cheap. Show me the code.(Linus名言)

#include#include#includeusing namespace std;int main(){  int a[11];  for(int i=1;i<=10;i++)    scanf("%d",&a[i]);    //for循环缩进,为了程序更易理解  for(int i=1;i<=10;i++)  //if语句也是这样    printf("%d",a[i]);     return 0;}

好了,今天给大家留一个思考题。试试看能不能用所学知识,输出斐波那契数列?(1,1,2,3,5,8,13,21,34,55...)

今天就到这里了,拜拜~下次不见不散~

?点赞,在看,转发点起来~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值