세 숫자를 오름차순으로 정렬하는 함수 !
꽃봄
#includeiostream
using namespace std;void sort(double &num1, double &num2, double &num3)
{
if( num1 num2)
swap(num1,num2)
else if(num2num3)
swap(num2,num3)
else if(num1num2)
swap(num1,num2) else
break;
}void swap(int n1, int n2)
{
int temp=n1;
n1=n2;
n2=temp;}
int main()
{
int num1;
coutEnter a num1 : ;
cin num1;
int num2;
coutEnter a num2 : ;
cin num2;
int num3;
coutEnter a num3 : ;
cin num3;
cout오름차순으로 정리하면sort(num1,num2,num3)endl;
system(PAUSE);
return 0;
} 이게 세숫자 num1,num2,num3를 오름차순으로 정렬하는 함수인데 else if 여기서 부터 오류가 나는데 어떻게 수정해야 하나요??
-
가온
오름차순으로 하실려면
else if 로 num1, num2, num3 을 한번만 비교하여 값을 주기 때문에
정렬이 한번만 됩니다.
그래서 else if 를 if로 바꿨습니다.
그리고 main 문의
cout\오름차순으로 정리하면\sort(num1,num2,num3)endl;
에서 오류가 난 이유는 sort() 함수에서 값을 넘겨주는 값이 없기 때문에 오류가 납니다.
return 문으로 값을 넘겨주면 오류는 안날겁니다. -
날위해
제가 계급이 안되서 덧글로 남겼습니다...
---------------------------------------------------------------------------
#includeiostream
using namespace std;
void sort(double &num1, double &num2, double &num3)
{
\tif( num1 num2)
\t\tswap(num1,num2);
\tif(num2num3)
\t\tswap