说明:本次题目前3题课堂必须完成;
全部题目均在课堂完成的找老师验证,均正确有额外加分。
1. 写一个sort( )函数完成对3个整型变量按由小到大的顺序排序,要求使用变
量的引用,3个变量在主函数中输入和输出。
提示:可以写一个交换两个数的函数change,函数原型为void change(int &x,int &y),change函数调用swap函数完成3个数的排序。注意使用引用和指针的不同。
#include
using namespace std;
int main()
{void sort(int &,int &,int &);
int a,b,c;
cout<
cin>>a>>b>>c;
cout<
sort(a,b,c); //调用排序函数
cout<
return 0;
}
void sort(int &i,int &j,int &k) //对3个数进行排序
{ void change(int &,int &);
if (i>j) change(i,j);
if (i>k) change(i,k);
if (j>k) change(j,k);
}
void change(int &x,int &y) //交换2个数
{ int temp;
temp=x;
x=y;
y=temp;
}
2. 写一个函数move( ),将一个3×3矩阵转置,要求使用指针完成,矩阵的输
入输出在主函数完成。
提示:矩阵转置即为行列元素的互换(a[i][j]=a[j][i]),先定义一个二维数组用双重循环给数组赋值,然后调用move函数完成转置,再输出转置后的数组。move函数的参数为一指向整型变量的指针*point,将point指向数组首地址后(注意使用p=&a[0][0]),对第i行第j列的元素可以表示为*(pointer+3*i+j),对第j行第i列的元素可以表示为*(pointer+3*j+i)。
#include
using namespace std;
int main()
{void move(int *);