编写程序,输入n个整数存放到一维数组中,对这n个整数从大到小排序 并输出

要编译运行的起,加分

第1个回答  2011-05-19
#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
void sort( int * s,int len);
void main()
{
int n,i;
printf("请输入个数n:\n");
scanf("%d",&n);
int * choice=(int *) malloc ( sizeof(int) * n );
printf("请输入%d个数\n",n);
for( i=0;i<n;i++)
scanf("%d",&choice[i]);

int * s=choice;
sort(s,n);
for( i=0;i<n;i++)
{
printf("%i ",choice[i]);
}
printf("\n");
free(choice);

}

void sort( int * s,int len)
{
int i=0,j=0,tmp;

for(i=0;i<len;i++)
{
for(j=i+1;j<len;j++)
{
if(*(s+i)>*(s+j))
{
tmp=*(s+i);*(s+i)=*(s+j);*(s+j)=tmp;
}
}
}
}追问

程序有错

追答

我测过的,怎么会有错,在输入数字时,输入一行数字,回一下车,直到输入n个数字

追问

visual c++ 6.0调试结果
C:\vvv.c(10) : error C2143: syntax error : missing ';' before 'type'
C:\vvv.c(13) : error C2065: 'choice' : undeclared identifier
C:\vvv.c(13) : error C2109: subscript requires array or pointer type
C:\vvv.c(13) : error C2102: '&'
C:\vvv.c(16)
.c(16) :
c(16) :
.c(19) :
.c(22) :
执行 cl.exe 时出错.
vvv.obj - 1 error(s), 0 warning(s)

追答

我也是visual c++ 6.0呀
你新建一个工程试试

本回答被提问者采纳
第2个回答  2011-05-20
void main()
{ const int N=100;
cout<<"请输入整数个数n(n<=100)";
int n,t,a[N];
cin>>n;
if (n<=N)
cout<<"请输入一串整数"<<endl;
for(int i=0;i<n;i++)
{ cin<<a[i];
for(int j=i+1; j<=n;j++)
if (a[j]>a[i])

}
for(i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
}
相似回答