一、【项目2:数组合并】
已知有两个有序的数组A,B,将这两个数组合并到数组C中,数组C依然有序,如a[5]={1,3,8,9,10},b[5]={2,3,4,5,6},则c[10]={1,2,3,3,4,5,6,8,9,10}
#include<iostream.h>
void main()
{
int a[5]={1,3,8,9,10},b[5]={2,3,4,5,6};
int c[10],i,j,k,t;
for(i=0;i<5;i++) //将a数组赋给c数组前五项
c[i]=a[i];
for(i=5,j=0;i<10;i++,j++) //将b数组赋给c数组后五项
c[i]=b[j];
for(i=0;i<10;i++) //冒泡法排序
{
for(j=0;j<9;j++)
{
if(c[j]>c[j+1]) //相邻两项比较大小,交换次序。
{
t=c[j];
c[j]=c[j+1];
c[j+1]=t;
}
}
}
cout<<"该数组排序后为:";
for(i=0;i<10;i++) //输出排序后c数组
cout<<c[i]<<'\0';
}
二、 【项目3:矩阵求和】
编写程序可求出矩阵a(3*3)的两条对角线上的元素之和。
#include<iostream.h>
void main()
{
int a[3][3],i,j,sum1=0,sum2=0;
cout<<"请输入该三阶矩阵:"<<endl;
for(i=0;i<3;i++) //输入该二维数组
{
for(j=0;j<3;j++)
cin>>a[i][j];
}
for(i=0;i<3;i++) //计算对角线和
{
sum1+=a[i][i]; //第一条对角线
sum2+=a[i][2-i]; //第二条对角线
}
cout<<"对角线1的和为"<<sum1<<",对角线2的和为"<<sum2<<endl;
cout<<"其和为"<<sum1+sum2-a[1][1]<<endl;
}