- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六讲 数组 指针与字符串;本讲主要内容;数组的概念;一维数组的声明与引用;例一维数组的声明与引用;一维数组的存储顺序;一维数组的初始化;一维数组应用举例;#include iostream.h
void main(void)
{
char key[ ] = {‘a’,‘c’,‘b’,‘a’,‘d’};//正确答案
char c;
int ques = 0, numques = 5, numcorrect = 0;
//提示输入5个问题的答案
cout “Enter the ” numques “ question tests:” endl; ;while (cin.get(c))
{
if (c != \n)
if (c == key[ques])
{numcorrect++;
cout ;
}
else cout *;
else
{ coutScorefloat(numcorrect)/numques*100 %;
ques = 0; // 复位变量
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}};;数组作为函数参数;#include iostream.h
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;
}
} ;void main(void)
{ 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);
};运行结果:
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
;对象数组;对象数组初始化;数组元素所属类的构造函数;对象数组应用举例
//Point.h
#if !defined(_Point_H)
#define _Point_H
class Point
{
public:
Point();
Point(int xx,int yy);
~ Point();
void Move(int x,int y);
int GetX() {return X;}
int GetY() {return Y;}
private:
int X,Y;
};
#endif;#includeiostream.h
#include “Point.h
Point::Point()
{ X=Y=0;
coutDefault Constructor called.endl;
}
Point::Point(int xx,int yy)
{ X=xx;
Y=yy;
cout Constructor called.endl;
};Point ::~Point()
{
coutDestructor called.endl;
}
void Point::Move(in
文档评论(0)