Yin茵艺 2022-04-19 19:56 采纳率: 66.7%
浏览 20
已结题

有关c++的相关问题

#include
using namespace std;
void sort(int* A, int ASize)
{
for (int i = 0; i < ASize; i++)
{
int flag = 0;
for (int j = 1; j <= ASize - 1 - i; j++)
{
if (A[j - 1] > A[j])
{
flag = 1;
int tmp = A[j - 1];
A[j - 1] = A[j];
A[j] = tmp;
}
}
if (flag == 0)
{
break;
}
}
}
int* sortedSquares(int* A, int ASize, int* returnSize)
{
*returnSize = ASize;
for (int i = 0; i < ASize; i++)
{
A[i] *= A[i];
}
sort(A, ASize);
return A;
}

int main()
{
int a[100], n, i ;
cin >> n;
for (size_t i = 0; i < n; ++i)
{
cin >> a[i];
}

sort(a, n);

for (size_t i = 0; i < n; i++)
{
    cout << a[i] << " ";
}

想问一下大家如果想要主函数中输入数组数字的个数是任意的,不需要先规定输入多少个再输入则要如何修改

  • 写回答

1条回答 默认 最新

  • 不会长胖的斜杠 新星创作者: 后端开发技术领域 2022-04-19 20:06
    关注

    用stl 的vector

    
    #include<iostream>
    #include<vector>//引入vector头文件
    using namespace std;
    int main() {
     vector<int> array;//定义一个vector数组array
     int number;
     while (1) {
      cin >> number;
      array.push_back(number);//每输入一个数字就把它添加到数组的最后
      if (cin.get() == '\n')//如果是回车符则跳出循环
       break;
     }
     int len = array.size();//返回数组长度为len
     //下面遍历一遍数组看看对不对
     for (int i = 0; i < len; i++) {
      cout << array[i] << endl;
     }
     return 0;
    }
    

    img

    若有用望采纳!谢谢

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月29日
  • 已采纳回答 5月21日
  • 创建了问题 4月19日