【問題】C++ 數字排序的問題


Recommended Posts

這是我寫的數字排序的程式

#include <iostream>

using namespace std;

int main()

{int n;

cout<<"請輸入想排序之數的個數: ";

cin>>n;

float *ptr=new float[n];

for(int i=0;i<n;i++)

{cout<<"請輸入: ";

cin>>*(ptr+i);}

cout<<"你所輸入的數是: ";

for(int i=0;i<n;i++)

{cout<<*(ptr+i)<<" ";}

cout<<endl;

for(int i=0;i<n-1;i++)

{float space;

for(int j=i+1;j<n;j++)

if(*(ptr+i)>*(ptr+j))

{space=*(ptr+i);

*(ptr+i)=*(ptr+j);

*(ptr+j)=space;} }

cout<<"由小到大排序後為: ";

for(int i=0;i<n;i++)

{cout<<*(ptr+i)<<" ";}

cout<<endl;

system("pause");

return 0;

}

但是這程式執行時一定要先輸入數字個數,不知道有沒有辦法直接輸入數字就可以執行(不用輸入數字個數),請各位大大提供一下!

鏈接文章
分享到其他網站
  • 3 weeks later...
這是我寫的數字排序的程式

#include <iostream>

using namespace std;

int main()

{int n;

cout<<"請輸入想排序之數的個數: ";

cin>>n;

float *ptr=new float[n];

但是這程式執行時一定要先輸入數字個數,不知道有沒有辦法直接輸入數字就可以執行(不用輸入數字個數),請各位大大提供一下!

跑一個WHILE迴圈輸入數字

每跑一次 count次數++

重新指派 ptr=new float[count];

設定按什麼就鍵就跳出來

應該這樣就可以了吧

鏈接文章
分享到其他網站

請登入後來留意見

在登入之後,您才能留意見



立即登入