0
#include <stdio.h>

main(){
    int ctr, ctr2, accn, tempn;
    char name[10][20], kwh[10][5], due[10][5], paid[10][5], tempne[20], tempkwh[5], tempdue[5], temppd[5];
    clrscr();
    for(ctr=0;ctr<10;ctr++){
    clrscr();
        printf("Account number:\n");
        scanf("%d",&accn[ctr]);
        printf("Name:\n");
        scanf("%s",&name[ctr][0]);
        printf("KWH used:\n");
        scanf("%s",&kwh[ctr][0]);
        printf("Amount due:\n");
        scanf("%s",&due[ctr][0]);
        printf("Amount paid:\n");
        scanf("%s",&paid[ctr][0]);
        }
    ctr=1;
    for( ;ctr==1; ){
        ctr=0;
        for(ctr2=0;ctr2<10;ctr2++){
            if(accn[ctr]>accn[ctr+1])
            {
                tempn=accn[ctr];
                accn=accn[ctr+1];
                accn[ctr+1]=tempn;
                tempne=name[ctr];
                name[ctr]=name[ctr+1];
                name[ctr+1]=tempne;
                tempkwh=kwh[ctr];
                kwh[ctr]=kwh[ctr+1];
                kwh[ctr+1]=tempkwh;
                tempdue=due[ctr];
                due[ctr]=due[ctr+1];
                due[ctr+1]=tempdue;
                temppd=paid[ctr];
                paid[ctr]=paid[ctr+1];
                paid[ctr+1]=temppd;
                ctr=1;
                }
            }
            }
            clrscr();
            ctr=0;
            for( ;ctr<10;ctr++){
            printf("%d %s \n%s\n %s\n %s\n\n",accn[ctr], name[ctr], kwh[ctr], due[ctr], paid[ctr]);
        }  

                                       }
4

1 に答える 1

1

最初に飛び出すのは次のとおりです。

scanf("%d",&accn[ctr]);

ここでaccn、 とctrはどちらもタイプintです。それは何をすることになっていますか?

また

tempn=accn[ctr];

tempn配列です。

残念ながら、あなたの問題の解決策はここでしか見つかりません。

于 2013-01-16T13:28:48.983 に答える