C++语言程序设计 清华大学郑莉 自数组的存储顺序 数 数组元素在内存中顺次存放,它们的地址是连 续的 例如:具有10个元素的数组a,在内存 组 中的存放次序如下: a a[0] a[1] a[2] a[3] a[4] a[5] a[6]a[7] a[8] a[9] 数组名字是数组首元素的内存地址。 数组名是一个當量,不能被赋值
C++语言程序设计 清华大学 郑莉 6 一维数组的存储顺序 数组元素在内存中顺次存放,它们的地址是连 续的。 例如:具有10个元素的数组 a,在内存 中的存放次序如下: 数组名字是数组首元素的内存地址。 数组名是一个常量,不能被赋值。 a a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] 数 组
C++语言程序设计 清华大学郑莉 维数组的初始化 可以在编译阶段使数组得到初值: 数 在声明数组时对数组元素赋以初值。 组例如: static int a10}={0,1,2,3,4,56,7,8,9} 可以只给一部分元素赋初值 例如: static int a[10]={0,1,2,3,4} 在对全部数组元素赋初值时,可以不指定数 组长度 例如: static int a={1,2,34,5} 7
C++语言程序设计 清华大学 郑莉 7 一维数组的初始化 可以在编译阶段使数组得到初值: – 在声明数组时对数组元素赋以初值。 例如:static int a[10]={0,1,2,3,4,5,6,7,8,9}; – 可以只给一部分元素赋初值。 例如:static int a[10]={0,1,2,3,4}; – 在对全部数组元素赋初值时,可以不指定数 组长度。 例如:static int a[]={1,2,3,4,5} 数 组
C++语言程序设计 清华大学郑莉 例:用数组来处理求 Fibonacci数列问题 Include<iostream> using namespace std; void maino i int i; static int f20]={1,1};∥初始化第01个数 for(i=2;20;++)f=ff-2]+ft-11;∥求第2~19个数 fofr(i=0;20;+)∥输出,每行5个数∥ tif(i%5==0)cout≤end cout width(12);∥设置输出宽度为12 cout<≤f 8
C++语言程序设计 清华大学 郑莉 8 #include<iostream> using namespace std; void main() { int i; static int f[20]={1,1}; //初始化第0、1个数 for(i=2;i<20;i++) f[i]=f[i-2]+f[i-1]; //求第2~19个数 for(i=0;i<20;i++) //输出,每行5个数// { if(i%5==0) cout<<endl; cout.width(12); //设置输出宽度为12 cout<<f[i]; } } 例:用数组来处理求Fibonacci数列问题
C++语言程序设计 清华大学郑莉 例:用数组来处理求 Fibonacci数列问题 运行结果: 8 13 21 34 89 144 233377610 9871597258441816765 9
C++语言程序设计 清华大学 郑莉 9 例:用数组来处理求Fibonacci数列问题 运行结果: 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
C++语言程序设计 清华大学郑莉 维教组应用举例 数 循环从键盘读入若干组选择题答案 计算并输出每组答案的正确率,直到输 组入c+z为止 每组连续输入5个答案,每个答案 可以是"a'.'d。 10
C++语言程序设计 清华大学 郑莉 10 一维数组应用举例 循环从键盘读入若干组选择题答案, 计算并输出每组答案的正确率,直到输 入ctrl+z为止。 每组连续输入5个答案,每个答案 可以是'a'..'d'。 数 组