注册 登录
编程论坛 C++教室

求大神指点改错

fl8962 发布于 2012-10-30 21:50, 233 次点击
#include<stdio.h> 输入十个数,然后把最大的那个数给最后一个,把最小的赋给第一个。然后输出这十个数。。求大神指点改错。。
void main()
{
    int a[10],*p1,b[10];
    int i,j,c,d;
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);
    for(i=0;i<10;i++)
    {
        b[i]=a[i];
    }
    for(i=0;i<9;i++)
        for(j=i+1;j<10;j++)
        {
            int k,t;
            k=i;
            if(a[i]>a[j])
                k=j;
            if(k!=i)
            {
                t=a[i];
                a[i]=a[j];
                a[j]=t;
            }
        }
        for(i=0;i<10;i++)
        {
            if(b[i]==a[0])
                break;
        }
        c=i;
        for(i=0;i<10;i++)
        {
            if(b[i]==a[9])
                break;
        }
        d=i;
        for(i=0;i<10;i++)
        {    int term=0;
        term=b[0];
        b[0]=b[c];
        b[c]=term;
        int temp=0;
        temp=b[9];
        b[9]=b[d];
        b[d]=temp;
            printf("%d",b[i]);
        }
}
1 回复
#2
w5277050902012-10-31 23:16
用冒泡法、选择法也不错。。。
1