#include <iostream>
using namespace std;
int main()
{
int a[10]; //表示数组a中有10元素,且都为整型
int i; //定义数组中的任意一个元素
for(i=0;i<10;i++) //给所有数组元素赋值
a[i]=i*2+2;
for(i=0;i<10;i++) //输出所有的数组元素,每行显示5个数组
{
cout<<a[i]<<'\t';
if((i+1)%5==0)
cout<<endl;
}
return 0;
}
第二个循环语句是从I=0到9,数组a的所有元素,a是与i有关的函数,再到条件语句if则说明每行显示5个数值。
例4.2
#include <iostream>
using namespace std;
int main()
{
int i,math[40],n; //i为数组中任意第i个元素,n为学生人数
float aver=0.0; //平均分
int unpassedcount=0; //不几个学生人数
int highscorecount=0; //90分以上学生人数
cout<<"请输入学生人数:";
cin>>n;
cout<<"请输入学生成绩:";
for(i=0;i<n;i++) //显示所有数组中的学生成绩,再求总成绩
{
cin>>math[i];
aver+=math[i];
}
aver=aver/n; //求平均值
for(i=0;i<n;i++)
{
if(math[i]<60) unpassedcount++; //求不及格的学生人数
if(math[i]>90) highscorecount++; //求90分以上的学生人数
}
cout<<"平均分:"<<aver<<endl;
cout<<"90分以上的人数:"<<highscorecount<<endl;
cout<<"不及格的人数:"<<unpassedcount<<endl;
return 0;
}
第一个循环语句是用于连续输入分数和计算总分数,第二个循环语句是用于从第0个开始计算特定条件下的总人数。
例4.3
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a[10],i,big; //i为数组中的第i个数,big为数组中的最大值
cout<<"please input 10 numbers:"<<endl;
for(i=0;i<10;i++)
cin>>a[i];
cout<<"the unmbers are:";
for(i=0;i<10;i++)
cout<<setw(4)<<a[i]; //调节宽度
cout<<endl;
big=a[0]; //以第0个为基准,开始逐个比较
for(i=1;i<10;i++)
if(a[i]>big)
big=a[i]; //遇到更大的值,开始更替
cout<<"the big number is:"<<big<<endl;
return 0;
}
程序是从最基准的0开始运行比较,遇到更大的值便进行更替,这样每个值都可以扫描到,这之前首先要在第一个循环语句中循环输入数值。
例4.4
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a[10];
int i,j,t;
cout<<"please input 10 number"<<endl;
for(i=0;i<10;i++)
cin>>a[i];
cout<<"the numbers are :";
for(i=0;i<10;i++)
cout<<setw(4)<<a[i];
cout<<endl;
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
cout<<"the sorcted numbers are:";
for(i=0;i<10;i++)
cout<<setw(4)<<a[i];
cout<<endl;
return 0;
}
例4.5
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int i;
int f[40]={1,1};
for(i=2;i<40;i++)
f[i]=f[i-2]+f[i-1];
for(i=0;i<40;i++)
{
if(i%4==0)
cout<<endl;
cout<<setw(12)<<f[i];
}
cout<<endl;
return 0;
}
程序在数组f赋初始值1,1,其他的元素未知。
例4.6
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int i;
int j; //i,j为二维组的行,列
int a[5][5];
for(i=0;i<5;i++) //二重叠嵌套循环使二维组所有元素被访问
{
for(j=0;j<5;j++)
{
if(i%2==0)
a[i][j]=i*5+j+1; //偶数按升序排序
else
[i][4-j]=i*5+j+1; //奇数按降序排序
}
}
for(j=0;i<5;i++) //二重叠嵌套循环
{
for(j=0;j<5;j++)
cout<<setw(4)<<a[i][j];
cout<<endl;
}
return 0;
}