OpenJudge计算概论-字符串排序
/*======================================================================
字符串排序
总时间限制: 1000ms 内存限制: 65536kB
描述
参考整数排序方法,设计一种为字符串排序的算法,将字符串从小到大输出
输入
第一行为测试数据组数t, 后面跟着t组数据。每组数据第一行是n,表示这组数据有n行字符串,接下来是要排序的n行字符串。每行字符串的字符个数不会大于200, n < 100。
输出
对于每组数据,输出排好序的字符串,每组输出后要多输出一个空行
样例输入
2
2
Hello
World
4
I
Love
C
Language!
样例输出
Hello
World C
I
Language!
Love 思路:
对t组数据的每一组,可以输入整组数据到二维的char数组(注意:二维的char数组的a[i]相当于第i行的首地址,所以可以gets(a[i]))
输入一组数据后对其排序,可以考虑用任何一种排序,下面代码使用选择排序。
========================================================================*/
#include<stdio.h>
#include<string.h>
int main()
{
int t,n;
int k,i,j,m;
char a[][],temp[];
freopen("5.in","r",stdin);
//freopen("result.out","w",stdout);
scanf("%d",&t);
for(k=;k<t;k++)
{
scanf("%d",&n);
getchar();//接收上一行scanf的回车符
for(i=;i<n;i++)
gets(a[i]);//scanf("%s",a[i]);无法接收含有空格的字符串,所以这个题用scanf会Wrong Answer。
//下面是选择排序
for(i=;i<n-;i++)
{
m=i;
for(j=i+;j<n;j++)
{
if(strcmp(a[j],a[m])<)
{
m=j;
}
}
if(i!=m)//这里交换两行字符串
{
strcpy(temp,a[i]);
strcpy(a[i],a[m]);
strcpy(a[m],temp);
}
}
//下面输出结果
for(i=;i<n;i++)
printf("%s\n",a[i]);
if(k!=t-) printf("\n");/**/
}
return ;
}
OpenJudge计算概论-字符串排序的更多相关文章
- Openjudge计算概论-DNA排序
/*===================================== DNA排序 总时间限制: 1000ms 内存限制: 65536kB 描述 给出一系列基因序列,由A,C,G,T四种字符组 ...
- OpenJudge计算概论-字符串最大跨距
/*====================================================================== 字符串最大跨距 总时间限制: 1000ms 内存限制: ...
- OpenJudge计算概论-单词排序
/*===================================== 单词排序 总时间限制:1000ms 内存限制: 65536kB 描述 输入一行单词序列,相邻单词之间由1个或多个空格间隔 ...
- OpenJudge计算概论-奇偶排序
/*==============================================总时间限制: 1000ms 内存限制: 65536kB描述 输入十个整数,将十个整数按升序排列输出,并且 ...
- OpenJudge计算概论-取石子游戏
OpenJudge计算概论-取石子游戏[函数递归练习] /*====================================================================== ...
- Openjudge计算概论——数组逆序重放【递归练习】
/*===================================== 数组逆序重放 总时间限制:1000ms 内存限制:65536kB 描述 将一个数组中的值按逆序重新存放. 例如,原来的顺 ...
- OpenJudge计算概论-计算书费
/*============================================== 计算书费 总时间限制: 1000ms 内存限制: 65536kB 描述 下面是一个图书的单价表: 计算 ...
- OpenJudge计算概论-最高的分数
/*======================================================== 最高的分数 总时间限制: 1000ms 内存限制: 65536kB 描述 孙老师 ...
- OpenJudge计算概论-求特殊自然数【枚举法】【将整数转成字符串】
/*======================================================================== 求特殊自然数 总时间限制: 1000ms 内存限制 ...
随机推荐
- 链表操作----将单链表向右旋转 K 个位置
给定一个单链表,设计一个算法实现链表向右旋转 K 个位置. 举例: 给定 1->2->3->4->5->6->NULL, K=3 则 4->5-> ...
- HDOJ三部曲-DP-1017-pearls
Pearls Time Limit : 2000/1000ms (Java/Other) Memory Limit : 20000/10000K (Java/Other) Total Submis ...
- magento 去掉index.php .html
首先应该确保你的服务器环境,达到了magento的运行需求,若你是使用的是magento专用空间就不必担心了,若不是请查看我以前的文章,检测你的运行环境(http://www.hellokeykey. ...
- 【题解】【字符串】【Leetcode】Valid Palindrome
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignori ...
- setInterval 函数传参(方法一)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Core Java Volume I — 3.6. Strings
3.6. StringsConceptually, Java strings are sequences of Unicode characters(Java的字符串是一个Unicode序列). Fo ...
- 行为识别笔记:HOG,HOF与MBH特征(转载)
在行为识别的iDT算法中,主要使用了HOG,HOF,MBH和Dense Trajectory四种特征.这里主要对前三者进行介绍. 1. HOG特征(histogram of gray) 此处HOG特征 ...
- 递归神经网络(RNN,Recurrent Neural Networks)和反向传播的指南 A guide to recurrent neural networks and backpropagation(转载)
摘要 这篇文章提供了一个关于递归神经网络中某些概念的指南.与前馈网络不同,RNN可能非常敏感,并且适合于过去的输入(be adapted to past inputs).反向传播学习(backprop ...
- css link和@import区别
1.link语法结构 <link href="CSSurl路径" rel="stylesheet" type="text/css" / ...
- Spring事务配置的五种方式 -- 越往后需要Spring版本越高
第五种 基本零配置 个人感觉第四种也可以 Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式, ...