zoukankan      html  css  js  c++  java
  • 第五周 英文单词排序

    7-1 英文单词排序

    本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。
    输入格式:
    输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。
    输出格式:
    输出为排序后的结果,每个单词后面都额外输出一个空格。
    输入样例:
    blue
    red
    yellow
    green
    purple

    正确代码:

    include<stdio.h>

    include<string.h>

    include<stdlib.h>

    struct Data {
    char data[10];
    int len;
    }s[20];

    int comp( const void *a ,const void b)
    {
    return (
    (struct Data )a).len - ((struct Data *)b).len;
    }

    int main()
    {
    int i, t;
    char ch;
    for(i = 0; 1; i ++) {
    scanf("%s", s[i].data);
    s[i].len = strlen(s[i].data);
    if(strcmp(s[i].data, "#") == 0) {
    break;
    }
    }
    qsort(s, i, sizeof(s[0]), comp);
    for(t = 0; t < i; t ++) {
    printf("%s ", s[t].data);
    }

    return 0;
    

    }

    遇到的错误

    解决方案:结尾格式错误

    更正后的运行结果:

    预习作业


    疑惑:
    1丶地址与指针的关系

  • 相关阅读:
    数型DP
    士兵杀敌(三)(RMQ)(DP) or ( 线段树 )
    还是回文
    dp(DAG)
    mysql的内连接外连接查询
    一些概念
    函数式编程中的一些概念
    Optional<T>
    计算文件和字符串的MD5摘要
    SpringMVC的一些配置
  • 原文地址:https://www.cnblogs.com/ludada007/p/10623202.html
Copyright © 2011-2022 走看看