数组定义:一组具有同一属性的数据而组成的一个整体。
数组包括一维数组、二维数组和多维数组。
如何定义数组:定义数组时需指定这批变量的类型、数组名称和数组中包含多少个元素(即变量)。’
eg:类型符 数组名[常量表达式] int a[10];
说明:(1)数组名的命名规则和变量名相同,遵循标识符命名规则
(2)在定义数组时,需要指定数组中元素的个数,方括号中的常量表达式用来表示元素的个数,即数组长度。
(3)数组的下标是从0开始的
//整形数组
int a[4] = {1,2,3,4}; //数组长度为4,只能存放4个元素
//浮点数数组
float a[4] = {1.0,2.0,3.0,4.0}; //数组长度为4,只能存放4个元素
//浮点数数组
double a[4] = {1.0,2.0,3.0,4.0}; //数组长度为4,只能存放4个元素
//字符串
char a[4] = "1234"; //数组长度为4,只能存放4个元素
在做数组题时,需注意范围
例题:
现在存在另一种斐波那契数:F(0)=7,F(1)=11,F(n)=F(n−1)+F(n−2)(n≥2)。
输入格式
每行输入包含一个整数 n(1≤n≤106),表示斐波那契数的下标。当 n 为 0 时输入结束。
输出格式
针对每行输入的 n ,如果 F(n) 可以被 3 整除,请在单独一行输出 “yes”,否则输出 “no”。
输入输出样例
输入样例1
- 1
- 2
- 3
- 4
- 5
- 0
输出样例1
- no
- yes
- no
- no
- no
样例说明
F(1)=11,F(2)=18,F(3)=29,F(4)=47,F(5)=76
#include<stdio.h>
#define N 100
int main()
{
int a[N],n,i;
while(scanf("%d",&n)!=EOF)
{
a[0]=7;a[1]=11;
if(n==0)
{
break;
}
else if(n>=2)
{
for(i=2;i<=n;i++)
{
a[i]=a[i-1]+a[i-2];
}
}
if(a[n]%3==0)
{
printf("yes\n");
}
else
{
printf("no\n");
}
}
return 0;
}