ポインタパラメータと参照パラメータを比較します.2つのパラメータの交換を実現する関数を定義します.メイン関数に実数を3つ入力し、昇順で並べ替えて出力します.1)変数のポインタを関数パラメータとし,被変調関数で変数値の交換を実現することが要求される.2)パラメータが参照タイプであること、

773 ワード

ポインタパラメータと参照パラメータを比較します.2つのパラメータの交換を実現する関数を定義します.メイン関数に実数を3つ入力し、昇順で並べ替えて出力します.1)変数のポインタを関数パラメータとし,被変調関数で変数値の交換を実現することが要求される.2)パラメータが参照タイプであることを要求し,変調関数で変数値の交換を実現する.
#include
using namespace std;
void swap(int *p,int *q){
	int temp;
	temp=*q;
	*p=*q;
	*q=temp;
}
void swap1(int &p,int &q){
	int temp;
	temp=p;
	p=q;
	q=temp;
}
void change(int *p1,int *p2,int *p3){
	if(*p1>*p2) swap(p1,p2);
	if(*p1>*p3) swap(p1,p3);
	if(*p2>*p3) swap(p2,p3);
}

void change1(int &p1,int &p2,int &p3){
	if(p1>p2) swap1(p1,p2);
	if(p1>p3) swap1(p1,p3);
	if(p2>p3) swap1(p2,p3);
}
int main(){
	int a,b,c,*q1,*q2,*q3;
	cout<>a>>b>>c;
	q1=&a;q2=&b;q3=&c;
	change(q1,q2,q3);
	cout<