用键盘任意输入十个学生姓名(以拼音的形式),将他们按ASCII码的顺序从小到大排列

输入多组字符串的时候老是报错,想了很久对了,但模模糊糊,希望解答一下,最后将他们的值进行循环比较的结果顺序不对,希望解答一下

你的代码呢?用strcmp比较啊

//用键盘任意输入十个学生姓名(以拼音的形式),将他们按ASCII码的顺序从小到大排列
#include <stdio.h>
#include <string.h>
int main()
{
    char name[10][20],t[20];
    for(int i=0;i<10;i++)
        scanf("%[^\n]", name[i]);
    for(int i=0;i<9;i++)
        for(int j=0;j<9-i;j++)
        {
            if(strcmp(name[j],name[j+1]) > 0)
            {
                strcpy(t,name[j]);
                strcpy(name[j],name[j+1]);
                strcpy(name[j+1],t);
            }
        }
    for(int i=0;i<10;i++)
        printf("%s\n",name[i]);
    return 0;
}

循环比较可以直接用sort啊