注册 登录
编程论坛 C++论坛

求助:c++高手进!

cgm1216 发布于 2008-09-08 15:38, 1384 次点击
小弟初学C++一程序问题如下:
1. 利用函数重载,写两个同名函数sort, 分别完成int型和float型数组的排序。
在main函数中分别定义int型和float型数组各一个,
然后调用sort函数分别为其排序。让系统自己选择用哪个函数。
希望高手帮忙解决
4 回复
#2
qfyzy2008-09-08 16:04
void sort(int *intNum){
...
}
void sort(folat *floatNum){
...
}
在main里直接调用,系统自动识别
#3
smltq2008-09-08 17:40
楼上正解……
#4
cgm12162008-09-08 20:39
回复 3# smltq 的帖子
不懂诶,,能不能解释下呀
谢谢
#5
cgm12162008-09-08 20:46
我自己遍的实在没又思路,高手指教,在线等待
#include <iostream>
#include <stdlib.h>
using namespace std;
void sort(int *intNum)
{int i,Num;
for(i=0;i<Num;i++)
  {int p=i,j,t,*a;
   a=malloc(Num*sizeof(int));
   for(j=i+1;j<Num-1;j++)
    if(a[p]>a[j]) p=j;
    t=a[i];a[i]=a[p];a[p]=t;
     }
 }

void sort(float *floatNum)
{ int i,p,j;
 p=i;
 float t,*a,Num;
  a=malloc(Num*sizeof(float));
   for(i=0;i<Num;i++)
    {float p=i,j,t;
      for(j=i+1;j<Num-1;j++)
        if(a[p]>a[j]) p=j;
         t=a[i];a[i]=a[p];a[p]=t;
        }
 }

main()
{int Num,i;
cout <<("please enter the number of digital")<<endl;
cin >>(Num);
cout <<("please enter the digital")<<endl;
int i,a[Num],*p;
p=&a;
for(i=0;i<Num;i++)
 cin>>(a[Num]);
 sort(Num);
 cout<<("the result of the sort is ");
 for(i=0;i<Num;i++)
  cout<<a[i];
}
1