首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

将数组中最小的数与第一个数兑换

2013-04-20 
将数组中最小的数与第一个数对换自己写的代码,编译没通过 ,求大神指点啊!#includestdio.hint main(){voi

将数组中最小的数与第一个数对换
自己写的代码,编译没通过 ,求大神指点啊!
#include<stdio.h>
int main()
{
void enter(int *p,int n);
void change(int *p,int n);
void print(int *p,int n);
int a[10],*p=a;
enter(p,10);
p=a;
change(p,10);
p=a;
print(p,10);
printf("\n");
return 0;
}
void enter(int *p,int n)
{
int i;
printf("please enter %d numbers:\n",n);
for(i=0;i<10;i++)
scanf("%d",p++);
}
void change(int *p,int n)
{
int i,j=0,t,min,max;
min=*p;
for(i=0;i<n;i++)
if(*(p+i)<min)
{
min=*(p+i);
j=i;
}
t=*p;
*p=*(p+i);
*(p+i)=t;
}
void print(int *p,int n)
{
int i;
for(i=0;i<10;i++,p++)
printf("%d ",*p);
} 11
[解决办法]

void change(int *p,int n)
{
int i,j=0,t,min,max;
min=*p;
for(i=0;i<n;i++)
if(*(p+i)<min)
{
min=*(p+i);
j=i;
}
t=*p;
*p=min;
*(p+j)=t;//楼主大意,把j写成i了!
}

热点排行