没有合适的资源?快使用搜索试试~ 我知道了~
详解C++中的一维数组和二维数组
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉

温馨提示
C++一维数组 定义一维数组 定义一维数组的一般格式为: 类型标识符 数组名[常量表达式]; 例如: int a[10]; 它表示数组名为a,此数组为整型,有10个元素。 关于一维数组的几点说明: 1) 数组名定名规则和变量名相同,遵循标识符定名规则。 2) 用方括号括起来的常量表达式表示下标值,如下面的写法是合法的: int a[10]; int a[2*5]; int a[n*2]; //假设前面已定义了n为常变量 3) 常量表达式的值表示元素的个数,即数组长度。例如,在“int a[10];”中,10表示a数组有10个元素,下标从0开始,这10个元素是
资源推荐
资源详情
资源评论


























详解详解C++中的一维数组和二维数组中的一维数组和二维数组
C++一维数组一维数组
定义一维数组
定义一维数组的一般格式为:
类型标识符 数组名[常量表达式];
例如:
int a[10];
它表示数组名为a,此数组为整型,有10个元素。
关于一维数组的几点说明:
1) 数组名定名规则和变量名相同,遵循标识符定名规则。
2) 用方括号括起来的常量表达式表示下标值,如下面的写法是合法的:
int a[10];
int a[2*5];
int a[n*2]; //假设前面已定义了n为常变量
3) 常量表达式的值表示元素的个数,即数组长度。例如,在“int a[10];”中,10表示a数组有10个元素,下标从0开始,这10个
元素是: a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7], a[8],a[9]。注意最后一个元素是a[9]而不是a[10]。
4) 常量表达式中可以包括常量、常变量和符号常量,但不能包含变量。也就是说,C++不允许对数组的大小作动态定义,即数
组的大小不依赖于程序运行过程中变量的值。例如,下面这样定义数组是不行的:
int n;
cin>>n; //输入a数组的长度
int a[n]; //企图根据n的值决定数组的长度
如果把第1,2行改为下面一行就合法了:
const int n=5;
引用一维数组的元素
数组必须先定义,然后使用。只能逐个引用数组元素的值而不能一次引用整个数组中的全部元素的值。
数组元素的表示形式为:
数组名[下标] 下标可以是整型常量或整型表达式。例如:
a[0]= a[5]+ a[7]- a[2*3]
【例】数组元素的引用。
#include <iostream>
using namespace std;
int main( )
{
int i, a[10];
for (i=0;i<=9;i++)
a[i]=i;
for (i=9;i>=0;i--)
cout<<a[i]<<" ";
cout<<endl;
return 0;
}
运行结果如下:
9 8 7 6 5 4 3 2 1 0
程序使a[0]~a[9]的值为0~9,然后按逆序输出。
一维数组的初始化
1) 在定义数组时分别对数组元素赋予初值。例如:

int a[10]={0,1,2,3,4,5,6,7,8,9};
2) 可以只给一部分元素赋值。例如:
int a[10]={0,1,2,3,4};
3) 如果想使一个数组中全部元素值为1,可以写成:
int a[10]={1,1,1,1,1,1,1,1,1,1};
不能写成
int a[10]={1*10};
不能给数组整体赋初值。
4) 在对全部数组元素赋初值时,可以不指定数组长度。例如:
int a[5]={1,2,3,4,5};
可以写成
int a[]={1,2,3,4,5};
一维数组程序举例一维数组程序举例
【例】用数组来处理求Fibonacci数列问题。
可以用20个元素代表数列中的20个数,从第3个数开始,可以直接用表达式f[i]=f[i-2]+f[i-1]求出各数。程序如下:
#include <iostream>
#include <iomanip>
using namespace std;
int main( )
{
int i;
int f[20]={1,1}; //f[0]=1,f[1]=1
for(i=2;i<20;i++)
f[i]=f[i-2]+f[i-1]; //在i的值为2时,f[2]=f[0]+f[1],依此类推
for(i=0;i<20;i++) //此循环的作用是输出20个数
{
if(i%5==0) cout<<endl; //控制换行,每行输出5个数据
cout<<setw(8)<<f[i]; //每个数据输出时占8列宽度
}
cout<<endl; //最后执行一次换行
return 0;
}
运行结果如下:
【例】编写程序,用起泡法对10个数排序(按由小到大顺序)。
起泡法的思路是:将相邻两个数比较,将小的调到前头。见图5.2。然后进行第2趟比较,对余下的前面5个数按上法进行比
较,见图。
剩余6页未读,继续阅读
资源评论

- OrangZi_182023-05-17资源中能够借鉴的内容很多,值得学习的地方也很多,大家一起进步!
- mountianfire1232024-01-04支持这个资源,内容详细,主要是能解决当下的问题,感谢大佬分享~

weixin_38553791
- 粉丝: 3
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 计算机会计理论与实务模拟题.docx
- 第13讲PC组成原理及接口技术.ppt
- 智慧城市发展中的问题及对策分析.docx
- 机械设计制造及其自动化(汽车工程方向)专业培养方案.doc
- MoldFlow软件流动分析应用.doc
- 探究性学习在中职计算机专业C语言程序设计基础课程中的应用.docx
- 计算机软件工程开发与实施教学研究.docx
- PLC在多段调速系统中的应用.doc
- (源码)基于C++的飞利浦Hue智能照明模拟系统.zip
- 新闻传播视域下大数据研究的知识图谱分析.docx
- 基于PLC的自动控制分拣系统的研究设计[].doc
- 软件项目开发计划书.doc
- 医疗器械生产质量管理规范独立软件现场检查指导原则.doc
- 单片机的电子万历设计(经典).doc
- 技术文件(综合布线).doc
- 时代光华:通信电源基础标准答案.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
