C++ 排序前显示的随机数

C++ 排序前显示的随机数,c++,C++,我尝试输入10个数字,然后调用函数(排序)以升序排序。排序后,主程序还将调用函数getAvg来平均数组中的数字。但是,在将10个值放入数组后。在我的输出之前显示了一些随机数 我做错了什么 #include<iostream> #include<stdio.h> using namespace std; void sorting(int array[]) { int t; int x=0; for (x=0; x<10; x++)

我尝试输入10个数字,然后调用函数(排序)以升序排序。排序后,主程序还将调用函数getAvg来平均数组中的数字。但是,在将10个值放入数组后。在我的输出之前显示了一些随机数

我做错了什么

#include<iostream>
#include<stdio.h>

using namespace std;

void sorting(int array[]) {
    int t;
    int x=0;

    for (x=0; x<10; x++)
    {
        for (int y=0; y<9; y++)
        {
            if(array[y]>array[y+1])
            {
                t=array[y];
                array[y]=array[y+1];
                array[y+1]=t;
            }
        }
    }
}

double getAvg(int array[]) {
    double sum=0;
    double avg=0;
    for (int j=0;j<10;j++){
        sum=sum+array[j];
    }
    avg=sum/10;
    return avg;
}


int main()
{
    int input=0;
    int array[10];
    double avg=0;
    printf("%s","Enter the 10 temperatures \n");
    for(int i=0;i<10;i++){
        scanf("%i",&input);
        array[i]=input;
    }

    sorting(array);    
    avg = getAvg(array);

    for (int k=0;k<=10;k++){
        cout<<array[k-1]<<" ";
    }

    printf("%s %.2lf %s","The average is ",avg, ".");
}
#包括
#包括
使用名称空间std;
无效排序(整数数组[]){
int t;
int x=0;

对于(x=0;x问题是您正在通过数组的
9
打印位置
-1
的元素。没有位置
-1
问题是您正在通过数组的
9
打印位置
-1
的元素。没有位置
-1
我认为是错误在本代码中:

for (int k=0;k<=10;k++){
    cout<<array[k-1]<<" ";
}

我的猜测是,您意识到您读得太远,并试图通过从数组索引中减去一个来修复此问题,这刚刚引入了一个新的错误。希望这能纠正此问题!

我认为错误在以下代码中:

for (int k=0;k<=10;k++){
    cout<<array[k-1]<<" ";
}
for (int k=0;k<=10;k++){
    cout<<array[k-1]<<" ";
}
我的猜测是,您意识到您读得太远,并试图通过从数组索引中减去一个来修复此问题,这刚刚引入了一个新的错误。希望这能纠正此问题!

for(int k=0;k
for(int k=0;kSide注意:您的代码乱七八糟。请尝试以更有条理的方式工作,这样会在运行时实际发生错误之前发现许多错误。旁注:您的代码乱七八糟。请尝试以更有条理的方式工作,这样会在运行时实际发生错误之前发现许多错误。
for (int k=0;k<=10;k++){
    cout<<array[k-1]<<" ";
}