我们之前学了循环结构,可以解决批量问题,但是当我们得到一堆数,让我们倒序输出时,我们就手足无措了——没法存储啊,一个一个的定义那等到天黑也写不完。这时,一个存储方式横空出世——数组,顾名思义就是一次定义一组数,对付需要存储大量的数时有奇效。
定义
数组的定义非常简单,就像定义一个数一样,但是需要在后面加上一个[ ]中间加上你要一次性定义多少个数,就像这样:
int a[10000];
上面这一行的意思是,定义一万个数,统一命名为a,第一个数叫做a[0],最后一个叫做a[9999]。
输入输出
数组的输入输出和输出一个数基本一样,像这样就行。
int a[2];
cin>>a[1];
cout<<a[1];
和循环的结合
数组这么多数,肯定是要配合着循环使用的,话不多说先看个题。‘
给定n个数,让你求出他们的和,再倒序输出。
样例输入
4
1 2 3 4
样例输出
10
4 3 2 1
思路也很简单,就是先输入,然后用数组把它们都存下来,然后反着循环输出一遍就行。
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
int a[50],sum=0;;
for(int i=1;i<=n;i++){
cin>>a[i];//读入数组的第i位。
sum+=a[i];//累加
}
cout<<sum<<endl;
for(int i=n;i>=1;i--){//反着输出
cout<<a[i]<<" ";
}
return 0;//打完收工
}
多维数组
当你终于解决了初步的存储问题时,难题又来了:给你n串数,让你存下来,这又出现了最开始的问题了:只能一个个写——了吗?这时我们伟大的先人们又想出来了一个偷懒的好方法:“用多维数组。”
所谓多维数组就像这样:
int a[n][m];
这样就表示了定义m个有n个数的序列a,问题就解决了。
PS
最近没有更新,很抱歉