C++ 排序前显示的随机数
我尝试输入10个数字,然后调用函数(排序)以升序排序。排序后,主程序还将调用函数getAvg来平均数组中的数字。但是,在将10个值放入数组后。在我的输出之前显示了一些随机数 我做错了什么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++)
#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;kfor(int k=0;kSide注意:您的代码乱七八糟。请尝试以更有条理的方式工作,这样会在运行时实际发生错误之前发现许多错误。旁注:您的代码乱七八糟。请尝试以更有条理的方式工作,这样会在运行时实际发生错误之前发现许多错误。
for (int k=0;k<=10;k++){
cout<<array[k-1]<<" ";
}