第六章数组指针和字符串.ppt
文本预览下载声明
第六章 数组 指针与字符串;本章主要内容;数组的概念;一维数组的声明与引用;例6. 1一维数组的声明与引用;一维数组的存储顺序;一维数组的初始化;#includeiostream
using namespace std;
int main()
{ int i;
static int f[20]={1,1}; //初始化第0、1个数
for(i=2;i20;i++) f[i]=f[i-2]+f[i-1]; //求第2~19个数
for(i=0;i20;i++) //输出,每行5个数//
{ if(i%5==0) coutendl;
cout.width(12); //设置输出宽度为12
coutf[i];
}
};例:用数组来处理求Fibonacci数列问题;一维数组应用举例;#include iostream
using namespace std;
int main()
{ char key[ ] = {a,c,b,a,d};
char c;
int ques = 0, numques = 5, numcorrect = 0;
cout Enter the numques question tests: endl;
while (cin.get(c))
{ if (c != \n)
if (c == key[ques])
{ numcorrect++;
cout ;
}
else cout *;
else
{ cout Score float(numcorrect)/numques*100 %;
ques = 0; // reset variables
numcorrect = 0;
cout endl;
continue;
}
ques++;
}
}
;运行结果:
acbba
** Score 60%
acbad
Score 100%
abbda
* ** Score 40%
bdcba
***** Score 0%;二维数组的声明及引用;存储顺序
按行存放,上例中数组a的存储顺序为:;将所有数据写在一个{}内,按顺序赋值
例如:static int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
分行给二维数组赋初值
例如:static int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
可以对部分元素赋初值
例如:static int a[3][4]={{1},{0,6},{0,0,11}};;数组作为函数参数;例6-2 使用数组名作为函数参数;#include iostream
using namespace std;
void RowSum(int A[][4], int nrow)
{ int sum;
for (int i = 0; i nrow; i++)
{
sum = 0;
for(int j = 0; j 4; j++)
sum += A[i][j];
cout Sum of row i is sum endl;
A[i][0]=sum;
}
} ;int main()
{ int Table[3][4] = {{1,2,3,4},{2,3,4,5},{3,4,5,6}};
for (int i = 0; i 3; i++)
{ for (int j = 0; j 4; j++)
cout Table[i][j] ;
cout endl;
}
RowSum(Table,3);
for (int i = 0; i 3; i++)
cout Table[i][0]
};运行结果:
1 2 3 4
2 3 4 5
3 4 5 6
Sum of row 0 is 10
Sum of row 1 is 14
Sum of row 2 is 18
10 14 18
;对象数组;对象数组初始化;数组元素所属类的构造函数;例6-3 对象数组应用举例;//6-2.cpp
#includeiostream
using namespace std;
#include Point.h
Point::Point()
{ X=Y=0;
coutDefault Constructor called.endl;
}
Point::Po
显示全部