跪求大神为我点拨点拨,为啥这个没函数不能调用,他要求对偶数排序
#include<stdio.h>#define N 5
int main()
{
void sort (int a[],int n);
int b,ou=0,i,c;
printf("输入数组元素:");
for(i=0;i<N;i++)
{
scanf("%d",&b);
}
for(i=0;i<N;i++)
{
if(b%2==0)
{
c=b;
ou++;
sort(c,ou);
printf("%4d",c);
printf("\n");
}
}
printf("ou=%d\n",ou);
}
void sort(int a[],int n)
{
int i,j,temp;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(a<a)
{
temp=a;
a=a;
a=temp;
}
}
}
自己数大括号去
{,8个
},7个
这个数就不对,更不应说你的配对问题了,这种问题,自己难道还发现不了!!!! ou=1.i<n-1 调试一下也能,看出来呀 还是调试一下吧 改成这样就没问题了出现的主要问题:
1.对c的赋值不应当以i为下标
2.排序应当在c全部赋值以后再进行
最后提一个建议,代码写整齐点比较容易找出格式上的错误
#include<stdio.h>
#define N 5
int main()
{
void sort (int a[],int n);
int b,ou=0,i,c;
printf("输入数组元素:");
for(i=0;i<N;i++)
{
scanf("%d",&b);
}
for(i=0;i<N;i++)
{
if(b%2==0)
{
c=b;
}
}
sort(c,ou);
for(i=0;i<ou;i++)
{
printf("%4d",c);
}
printf("\n");
printf("ou=%d\n",ou);
}
void sort(int a[],int n)
{
int i,j,temp;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(a<a)
{
temp=a;
a=a;
a=temp;
}
}
}
}
页:
[1]