C语言 对输入的n个字符串进行排序,并输出(排序过程中会改变字符串真正的存放位置)
样式输入:5dograbbitpatternfishqueen样式输出:dogfishpatternqueenrabbit下面是我的编程,有错误,怎么改正。#includ...
样式输入:5
dog
rabbit
pattern
fish
queen
样式输出:
dog
fish
pattern
queen
rabbit
下面是我的编程,有错误,怎么改正。
#include<stdio.h>
#include<string.h>
int main ()
{
char s[100],t;
int n,i,j,k;
scanf("%d",&n);
for(i=0;i<n;i++)
gets(s);
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(strcmp(s[i],s[j])>0)
{
t=s[i];
s[i]=s[j];
s[j]=t;
}
}
for(i=0;i<n;i++)
puts(s);
} 展开
dog
rabbit
pattern
fish
queen
样式输出:
dog
fish
pattern
queen
rabbit
下面是我的编程,有错误,怎么改正。
#include<stdio.h>
#include<string.h>
int main ()
{
char s[100],t;
int n,i,j,k;
scanf("%d",&n);
for(i=0;i<n;i++)
gets(s);
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(strcmp(s[i],s[j])>0)
{
t=s[i];
s[i]=s[j];
s[j]=t;
}
}
for(i=0;i<n;i++)
puts(s);
} 展开
展开全部
#include<stdio.h>
#include<string.h>
void main ()
{
char s[10][100],t[100];//用二维数组最大输入10个字符串,T为装字符串的数组
int n=0,i,j,k;
scanf("%d",&n);//输入次数
for(i=0;i<n+1;i++){//输入n次字符串//是i<n+1,不是i<n,也可以改为i<=n
gets(s[i]);
}
for(i=0;i<n+1;i++)//扫描5次字符串组
{
for(j=i+1;j<n+1;j++)
{
if(strcmp(s[i],s[j])>0)//从小到大排列
{
strcpy(t,s[i]);//数组赋值用strcpy不能用=这个方式
strcpy(s[i],s[j]);
strcpy(s[j],t);
}
}
}
for(i=0;i<n+1;i++){//是i<n+1,不是i<n,也可以改为i<=n
puts(s[i]);
}
}
#include<string.h>
void main ()
{
char s[10][100],t[100];//用二维数组最大输入10个字符串,T为装字符串的数组
int n=0,i,j,k;
scanf("%d",&n);//输入次数
for(i=0;i<n+1;i++){//输入n次字符串//是i<n+1,不是i<n,也可以改为i<=n
gets(s[i]);
}
for(i=0;i<n+1;i++)//扫描5次字符串组
{
for(j=i+1;j<n+1;j++)
{
if(strcmp(s[i],s[j])>0)//从小到大排列
{
strcpy(t,s[i]);//数组赋值用strcpy不能用=这个方式
strcpy(s[i],s[j]);
strcpy(s[j],t);
}
}
}
for(i=0;i<n+1;i++){//是i<n+1,不是i<n,也可以改为i<=n
puts(s[i]);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |