Practice—毛绒玩具名字(字典序排序)

2024-01-29 05:08

本文主要是介绍Practice—毛绒玩具名字(字典序排序),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 一、题目
  • 二、输入输出格式
  • 三、实现
  • 四、总结


一、题目

萨博有 N 个毛绒玩具,萨博给他们都起了名字。每个毛绒玩具的名字都不超过 40 个字符。 萨博想把这些毛绒玩具的“名字”倒过来,并将倒过来后的“名字”按照字典序排序。


二、输入输出格式


输入

第一行是一个整数 N( 0<N≤3 )表示萨博的毛绒玩具数。
之后的 N 行,每行有一个字符串,是萨博的某一个毛绒玩具的名称。

输出

输出有 N 行,是所有毛绒玩具倒过来后的“名字”按照字典序排序后的结果。


输入样例

4
Tommy
Cat
Airman
Spider

输出样例

namriA
redipS
taC
ymmoT


三、实现

代码

#include <stdio.h>
#include <string.h>int main()
{int N;scanf("%d", &N);char name[N][41];memset(name, 0, sizeof(name));for (int i = 0; i < N; i++){scanf("%s", &name[i][0]);}for (int i = 0; i < N; i++){char temp[41];int len;len = strlen(&name[i][0]);          //二维数组中第i个元素的长度memset(temp, 0, sizeof(temp));for (int j = len - 1; j >= 0; j--){   temp[len - 1 - j] = name[i][j];}           strcpy(&name[i][0], temp);//printf("%s\n", &name[i][0]);}   for (int i = 0; i < N; i++){for (int j = i + 1; j < N; j++){char temp2[41];memset(temp2, 0, sizeof(temp2));if (name[i][0] > name[j][0]){strcpy(temp2, &name[i][0]);strcpy(&name[i][0], &name[j][0]);strcpy(&name[j][0], temp2);}}printf("%s\n", &name[i][0]);}return 0;
}

四、总结

以上题为例

二维数组:
char name[N][41]; //N 是名字个数,41是给每个名字分配的内存空间(字节)

其中第 i 个名字的长度为:(二维数组中某个元素的长度)
len = strlen(&name[i][0]);

二维数组的初始化:
memset(name, 0, sizeof(name));


这篇关于Practice—毛绒玩具名字(字典序排序)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/655817

相关文章

Java Map排序如何按照值按照键排序

《JavaMap排序如何按照值按照键排序》该文章主要介绍Java中三种Map(HashMap、LinkedHashMap、TreeMap)的默认排序行为及实现按键排序和按值排序的方法,每种方法结合实... 目录一、先理清 3 种 Map 的默认排序行为二、按「键」排序的实现方式1. 方式 1:用 TreeM

Python实现字典转字符串的五种方法

《Python实现字典转字符串的五种方法》本文介绍了在Python中如何将字典数据结构转换为字符串格式的多种方法,首先可以通过内置的str()函数进行简单转换;其次利用ison.dumps()函数能够... 目录1、使用json模块的dumps方法:2、使用str方法:3、使用循环和字符串拼接:4、使用字符

Linux命令rm如何删除名字以“-”开头的文件

《Linux命令rm如何删除名字以“-”开头的文件》Linux中,命令的解析机制非常灵活,它会根据命令的开头字符来判断是否需要执行命令选项,对于文件操作命令(如rm、ls等),系统默认会将命令开头的某... 目录先搞懂:为啥“-”开头的文件删不掉?两种超简单的删除方法(小白也能学会)方法1:用“--”分隔命

Python 常用数据类型详解之字符串、列表、字典操作方法

《Python常用数据类型详解之字符串、列表、字典操作方法》在Python中,字符串、列表和字典是最常用的数据类型,它们在数据处理、程序设计和算法实现中扮演着重要角色,接下来通过本文给大家介绍这三种... 目录一、字符串(String)(一)创建字符串(二)字符串操作1. 字符串连接2. 字符串重复3. 字

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

C++归并排序代码实现示例代码

《C++归并排序代码实现示例代码》归并排序将待排序数组分成两个子数组,分别对这两个子数组进行排序,然后将排序好的子数组合并,得到排序后的数组,:本文主要介绍C++归并排序代码实现的相关资料,需要的... 目录1 算法核心思想2 代码实现3 算法时间复杂度1 算法核心思想归并排序是一种高效的排序方式,需要用

Python 字典 (Dictionary)使用详解

《Python字典(Dictionary)使用详解》字典是python中最重要,最常用的数据结构之一,它提供了高效的键值对存储和查找能力,:本文主要介绍Python字典(Dictionary)... 目录字典1.基本特性2.创建字典3.访问元素4.修改字典5.删除元素6.字典遍历7.字典的高级特性默认字典

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

python3如何找到字典的下标index、获取list中指定元素的位置索引

《python3如何找到字典的下标index、获取list中指定元素的位置索引》:本文主要介绍python3如何找到字典的下标index、获取list中指定元素的位置索引问题,具有很好的参考价值,... 目录enumerate()找到字典的下标 index获取list中指定元素的位置索引总结enumerat

Java List排序实例代码详解

《JavaList排序实例代码详解》:本文主要介绍JavaList排序的相关资料,Java排序方法包括自然排序、自定义排序、Lambda简化及多条件排序,实现灵活且代码简洁,文中通过代码介绍的... 目录一、自然排序二、自定义排序规则三、使用 Lambda 表达式简化 Comparator四、多条件排序五、