6.1 一維數組
6.1.1 一維數組定義方式
類型聲明符 數組名[常量表達式]
6.1.2 一維數組的引用
數組名[下標];
例如:任意輸入五個數,實現五個數據逆序存放。
#include <iostream>
#include<stdio.h>
using namespace std;
int main()
{
int temp,a[5],i;
printf("please input array a:\n");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
printf("array a:\n");
for(i=0;i<5;i++)
printf("%d",a[i]);
printf("\n");
for(i=0;i<2;i++)
{
temp=a[i];
a[i]=a[4-i];
a[4-i]=temp;
}
printf("now array a:\n");
for(i=0;i<5;i++)
printf("%d",a[i]);
printf("\n");
}
結果
6.1.3 一維數組的初始化
- 在定義數組時直接對數組元素賦值
#include <stdio>
using namespace std;
int main()
{
int a[4]={1,2,3,4};
for(int i=0;i<4;i++)
printf("%d",&a[i]);
printf("\n");
}
- 可以只給一部分賦值,未賦值的元素中爲0
#include <stdio>
using namespace std;
int main()
{
int a[4]={1,2,3};
for(int i=0;i<4;i++)
printf("%d",&a[i]);
printf("\n");
}
6.1.4 一維數組的應用
使用數組保存學生姓名。名字如下:wangjiasheng,LiuWen,zhangmeng,leiyu,suyuqun。
#include <iostream>
#include<stdio.h>
using namespace std;
int main()
{
char*arrayname[5];/*字符指針數組*/
int index;
arrayname[0]="wangjiasheng";
arrayname[1]="LiuWen";
arrayname[2]="zhangmeng";
arrayname[3]="leiyu";
arrayname[4]="suyuqun";
for(index=0;index<5;index++)
{
printf("%s\n",arrayname[index]);
}
return 0;
}
6.2 二維數組
6.2.1 二維數組定義方式
類型聲明符 數組名[常量表達式1][常量表達式2];
6.2.2 二維數組的引用
數組名[下標];
6.2.2 二維數組的初始化
- 分行給二維數組賦值
例如:
int array[2][3]={{1,2,3},{4,5,6}};
第一個括號裏面的元素賦值給第一行,第二個花括號裏面的元素賦值給第二行。
- 將數據寫在一個花括號裏,按數組排列順序對各個元素賦初值
例如:
int array[2][3]={5,4,3,2,1,0};
- 對部分元素賦初值
- 如果對全部元素賦初值,則定義數組時對第一維的長度可以不指定,但第二維的長度不能省略。
例如:
int array[][3]={5,4,3,2,1,0};
6.2.3 二維數組應用
任意輸入一個三行三列的二維數組,求對角之和。
#include<iostrean>
#include<stdio.h>
using namespace std;
int main()
{ int i,j,sum=0;
int a[3][3];
printf("please input\n");
for(i=0;i<3;i++)
{for(i=0;j<3;j++)
scanf("%d",&a[i][j]);
}
for(i=0;i<3;i++)
{for(i=0;j<3;j++)
{if(i==j)
sum=sum+a[i][j];}
}
printf("the result is:%d\n",sum);
return 0;
}
結果