
#include <iostream>
using namespace std;
int size = 5;
void selectionSort(int arr[])
{
for (int k = 1; k < size; k++)
{
int temp = arr[k];
int j = k - 1;
while (j >= 0 && temp <= arr[j])
{
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = temp;
}
}
void displayArray(int arr[])
{
//int size = 5;
for (int i = 0; i < size; i++)
{
cout << " " << arr[i];
}
}
int main()
{
//int arr[5];
int arr[size];
cout << "Please enter 5 number to the array." << endl;
for (int i = 0; i < size; i++)
{
cin >> arr[i];
}
for (int i = 0; i < size; i++)
{
cout << " " << arr[i];
}
selectionSort(arr);
cout << " \nafter sorting " << endl;
displayArray(arr);
return 0;
}
想請問為什么我已經宣告全域變數下面每個函式都不能用size呢?
uj5u.com熱心網友回復:
這就是全域變數的尷尬了。你最好想一個獨特的變數名,
至于size,已經被頭檔案用了,所以會出毛病。
uj5u.com熱心網友回復:
把編譯結果貼出來uj5u.com熱心網友回復:
const int size=5;這樣就好
uj5u.com熱心網友回復:
因為size不是常量,不能用到陣列定義里面,要加constuj5u.com熱心網友回復:
這么改下試試const int size = 5;
uj5u.com熱心網友回復:
樓上說的對 想用非常量 那么陣列 就要用new char [size] 這種形式了轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/270270.html
標籤:C++ 語言
下一篇:不懂就問
