c语言入门的排序问题。

#include <stdio.h>
int main()
{
    int n,t,i,j,a[100];
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    scanf("%d",&a[i]);
    for(i=1;i<=n;i++)
    for(j=1;j<=n-i;j++)
    {
        if(a[j]<a[j+1])
        {
            t=a[j];
            a[j]=a[j+1];
            a[j+1]=t;
         }}
         
   for(j=1;j<=n;j++)
   {
       if(a[j]%2==0)
       printf("%d ",a[j]);
    }
    for(j=1;j<=n;j++)
    {
        if(a[j]%2!=0)
        printf("%d ",a[j]);
    }
        return 0;
        }

问题是

对n个不同整数进行排序

从大到小依次排序,在此基础上,偶数在前奇数在后

我的情况是,运行程序能够得出结果,然后提交给学校 系统,系统显示错误,希望大佬能够debugging,谢谢


shark霯霯
浏览 1330回答 3
3回答

慕的地8582982

LHIRJBQNGNNYVPZKTOHQNDKQUKAAQEUSFTPHRUFFDCDAINUOHEEUQGKTYISPDRHUQROJVBBUYFCPFZCSCISLYRMYQGZYJVVPSPWGYUSVPVZLIIEVYBIMMEOFOSEQKIMZMYHXENVVZYIOLSPUAABAKXDDWTLKVPJSJSSLFUZAJRIYFEBRVGCAKNUEWNUUKWTXAQGCMKINDHMVVVLQAFRMMWDGXGUEKWPQEVLOUUDVHKIIIJCLIGSRNSFPFXGQBVZFPSCZIRBCFVSJTDDJCCQLNCBGZAXGJXGCMNXXYOKLSKNJZZTTWFIYUDJNNXAQPPZUHOXXHIHWJZJASCQAHHWGXTOPSCCCJBMTMNEUEQLUJKXKLQDWHLBASPRHJBHXDQJATVVHBADEUKHEWWXAKRSSJKHCNEPQJXQFTWDGUNMJWEKHSHUUEEOISWQDPWXFQABBEVXOBSPQPEMSCASPNCNWQHXHSJYFCRHCFOYDCYPVZWBKAXECZIFHFZCINAYHMDVBFYRFIDNNAIOVLOOCLNDUDIURNOFVRRYBKYMMBHROIZJXKRUITKQSWLBEWPDYMZTUUXFJCDUGFQEGUSIVYFIRLTDXIMPBCHNXEOVILEQKGFZQNOUOHBOIMWRRROYFZGWMGUZNKKDRYLLWWQAVLBFPIWKDRCKFRCXGVZOVEBCWQTKUWABZQKKDEEKAOOOITMUVSOFFIZJKBECDBYGWDEWFPCZVPNPDOOXOFDOYIJJUBHUMRGUBXRKRLBRRGBGZGNXKERSQKAALSFIZKRHTZEFQQKEENAKMIXUOYQAVKBRIOJUXHZIOOODGAHLYFMBTHYYGRKOEVBVCPMMWFJNDDDUERRHQYVLQHLMTOORBITJTSKEKYXHD

望远

怎们感觉题目怪怪的,按照你程序的意思不是有n个数,然后让偶数在前,奇数在后,在此基础上进行从大到小排序吗?。还有你的程序应该没错,只是数组下标是从0开始的,你是从1开始的。

Steafan_

你想问什么??
打开App,查看更多内容
随时随地看视频慕课网APP