c - 我在在线程序挑战编译器中遇到演示错误

标签 c

#include <stdio.h>
#include <string.h>

int main() {
    int num, i, j, result, index;
    char name[100][10]; 
    char temp[10];                 
    scanf("%d\n", &num);
    for(i = 0; i < num; i++)
        scanf("%s\n", name[i]);
    for(i = 0; i < num; i++) { 
        index = i;
        for(j = i + 1; j < num; j++) {
            result = strcmp(name[index], name[j]);
            if(result > 0)                               
                index = j;
        }
        strcpy(temp, name[index]);
        strcpy(name[index], name[i]);                  
        strcpy(name[i], temp);
    }

    for(i = 0; i < num; i++) {
        printf("%s", name[i]);
        printf("\n");
    }
}

给你一组小写英文字母的单词。它们将按字母顺序排序。

字母顺序:这是单词在字典或电话簿中的组织顺序。

例如,

  • abc 在 xab 之前。原因:首字母不同。所以,他们被比较了。 a 在英文字母表中出现在 x 之前。
  • aab 在 abc 之前。原因:首字母相同 (aab abc)。因此,比较接下来的 2 个字母 (aab abc)。
  • aab 在 aaba 之前。原因:aab 中的前 3 个字母与 aab 中的前 3 个字母相同,并且 aab 中没有更多字母可以与 aaba 进行比较。因此,长度较小的词排在第一位 (aab)。

输入 - 第一行有“n”,即单词数,后面是 n 行,每行包含一个单词。

输出 - 按字母顺序排列的单词,每行一个。

约束:0 < n <=100, 0 < 每个单词的长度 <= 10

提示:了解二维数组如何提供帮助。

此程序可恢复在线挑战中的演示错误

示例输入

2
world
hello

示例输出

hello
world

最佳答案

Presentation error简单的说就是你呈现o/p的方式与机器人裁判的数据库不匹配。
只需在您的预期答案中犯一些错误,找出实际的 o/p 应该如何呈现,然后您就可以更正它。

关于c - 我在在线程序挑战编译器中遇到演示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22748662/

相关文章:

c - 处理管道、 fork 时的救助策略

c - 使用指针的二维数组 - 内存泄漏

c - 如果调用 push 函数超过 8 次,为什么我的代码会崩溃?

c# - 如何重写复杂的 C++ 代码行(嵌套三元运算符)

c - 这个 foo 函数是如何工作的?

c - 套接字编程,ipv6客户端程序不工作

php - 从控制台调用时如何查看 PHP 响应?

c - 如何确定二维数组的大小?

c - void 函数中的递归过程

c - 使用 valgrind 和 gdb 进行调试