处理少量数据的时候,可以采用直接int的方法,但是处理大量数据,假设有100个数据,不可能去int100个变量,这样开发效率会十分低下。这种时候就要使用数组。
数组的表达与普通变量差不多,初始化只需要和变量一样int就行。格式为变量名[i],i为数组的大小。
int a[15];数组也是需要输入的,所以我们需要使用到cin(C++)或者scanf(C)。但是数组的数量有限,我们这里需要使用for循环限制读取数组的数量,防止出现过多的无效数据出现,干扰最终的结果。 注意:数组的序号是从1开始,所以在for循环内,int i需要从1开始,而不是0。 C++:
for(int i=1;i<=10;i++){ cin>>a[i]; }C: C语言不支持使用for语句,则用while代替
int i=1; while(i<=10){ scanf(a[i]); i++; }题目描述(NOIP2005普及组第一题)(洛谷编号:P1046) 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。
现在已知1010个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。
输入格式 输入包括两行数据。第一行包含10个100到200之间(包括100和200)的整数(以厘米为单位)分别表示10个苹果到地面的高度,两个相邻的整数之间用一个空格隔开。第二行只包括一个100到120之间(包含100和120)的整数(以厘米为单位),表示陶陶把手伸直的时候能够达到的最大高度。
题解 思路:将陶陶把手伸直的时候能够达到的最大高度加上板凳的高度,设为可以够到苹果的最大值,然后与数组中的数据进行比较,赋值给另一变量 代码: C++:
#include <iostream> using namespace std; int main() { int a[15];//苹果高度数组 int b,c,d=0;//b手臂长,c含板凳高,d个数 for(int i=1;i<=10;i++){ cin>>a[i]; } cin>>b; c=b+30; for(int i=1;i<=10;i++){ if(c>=a[i]){ d++; } } cout<<d; return 0; }