无法正常运行的原因是,函数的返回值和调用方法错误。
如果只是需要排序数组,不需要返回值, 所以把int返回值类型可以改为void;正常调用,使用实参调用f1函数即可,即形如f1(a,10);即可。
修改如下:
#include <iostream>
using namespace std;
//因为只是需要排序数组,使用数组元素指针来可以达到排序数组元素的目的,不需要返回值, 所以int返回值改为void
void f1(int a[],int n){
int i,j,t;
for(i=0;i<n-1;i++){
for(j=0;j<n-i-1;j++){
if(a[j]>a[j+1]){
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
}
int main(void){
int a[10],i;
cout<<"Input 10 number:\n";
for(i=0;i<10;i++){
cin>>a[i];
}
f1(a,10); //调用f1函数
//打印数组a的元素的值
for(i=0;i<10;i++){
cout<<a[i]<<'\t';
}
return 0;
}
看你想返回函数的哪个值咯