当前位置: 代码迷 >> C语言 >> 函数调用
  详细解决方案

函数调用

热度:301   发布时间:2006-10-21 16:40:11.0
函数调用

#include <stdio.h>
#define length 5
void swap(int a,int b);
void main()
{
int i,j,n[length];
printf("Enter %d integers:",length);
for(i=0;i<length;i++)
scanf("%d",&n[i]);
printf("\n");
for(i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(n[i]>n[j])
swap(n[i],n[j]);
for(i=0;i<length;i++)
{
if(i%5==0)
printf("\n");
printf("%4d",n[i]);
}
}
void swap(int a,int b)
{
int temp;
temp=a;
a=b;
b=temp;
}
这个swap()好像没起到作用,这个我在书上也看到过,但是如果我想要用swap()来交换又应该怎么定义呢?

搜索更多相关的解决方案: 函数  

----------------解决方案--------------------------------------------------------
#include <stdio.h>
#define length 5
void swap(int *a,int *b);
void main()
{
int i,j,n[length];
printf("Enter %d integers:",length);
for(i=0;i<length;i++)
scanf("%d",&n[i]);
printf("\n");
for(i=0;i<length-1;i++)
for(j=i+1;j<length;j++)
if(n[i]>n[j])
swap(&n[i],&n[j]);
for(i=0;i<length;i++)
{
if(i%5==0)
printf("\n");
printf("%4d",n[i]);
}
}
void swap(int *a,int *b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}
----------------解决方案--------------------------------------------------------
哦,原来是这样啊,谢谢了啊
----------------解决方案--------------------------------------------------------

#include <stdio.h>
#define length 5
void swap(int *a,int *b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;

}
void main()
{
int i,j,n[length];
printf("Enter %d integers:",length);
for(i=0;i<length;i++)
scanf("%d",&n[i]);
printf("\n");
for(i=0;i<length-1;i++)
for(j=0;j<length-1-i;j++)
if(n[j]>n[j+1])
swap(&n[j],&n[j+1]);

for(i=0;i<length;i++)

printf("%4d",n[i]);

getch();
}
我个人认为应该这样,大家提提意见嘛!!


----------------解决方案--------------------------------------------------------
  相关解决方案