当前位置: 代码迷 >> C语言 >> [求助]将若干字符排序(找错)(已解决)
  详细解决方案

[求助]将若干字符排序(找错)(已解决)

热度:132   发布时间:2006-10-25 19:39:43.0
[求助]将若干字符排序(找错)(已解决)

#include<stdio.h>
#include<string.h>
void main()
{
void sort(char *name[],int n);
void print(char*name[],int n);
char *name[]={"fllow me","basic","great wall","fortran","computer design"};
int n=5;
sort(name,n);
print(name,n);
}
void sort(char *name[],int n)
{
char *temp;
int i,j;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{ if(strcmp(name[i],name[j]))>0
{temp=name[i];name[i]=name[j];name[j]=temp;}}
}

void print(char *name[],int n)
{
int i;
for(i=0;i<n;i++)
printf("%s\n",name[i]);
}

搜索更多相关的解决方案: 字符  

----------------解决方案--------------------------------------------------------

//考试时可千万马虎不得啊...

程序代码:
#include<stdio.h>
#include<string.h>
void sort(char *name[],int n);
void print(char*name[],int n);
void main()
{

char *name[]={\"fllow me\",\"basic\",\"great wall\",\"fortran\",\"computer design\"};
int n=5;
sort(name,n);
print(name,n);
}

void sort(char *name[],int n)
{
char *temp;
int i,j;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{ if(strcmp(name[i],name[j])>0)
{temp=name[i];name[i]=name[j];name[j]=temp;}}
}
}

void print(char *name[],int n)
{
int i;
for(i=0;i<n;i++)
printf(\"%s\n\",name[i]);
}


----------------解决方案--------------------------------------------------------
void sort(char *name[],int n)
{
char *temp;
int i,j;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{ if(strcmp(name[i],name[j])>0)
{temp=name[i];name[i]=name[j];name[j]=temp;}}
}
//少了一个右花括号。
你上机调试根据提示是能找出错误的。

----------------解决方案--------------------------------------------------------
以下是引用unicorn在2006-10-25 19:51:57的发言:

//考试时可千万马虎不得啊...

程序代码:
#include<stdio.h>
#include<string.h>
void sort(char *name[],int n);
void print(char*name[],int n);

void main()
{

char *name[]={\"fllow me\",\"basic\",\"great wall\",\"fortran\",\"computer design\"};
int n=5;
sort(name,n);
print(name,n);
}

void sort(char *name[],int n)
{
char *temp;
int i,j;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{ if(strcmp(name[i],name[j])>0)
{temp=name[i];name[i]=name[j];name[j]=temp;}}
}
}

void print(char *name[],int n)
{
int i;
for(i=0;i<n;i++)
printf(\"%s\n\",name[i]);
}

这两行在函数里声明不行吗?


----------------解决方案--------------------------------------------------------

谢谢大家


----------------解决方案--------------------------------------------------------

这两行在函数里声明不行吗?

可以 只是看惯C++的格式了


----------------解决方案--------------------------------------------------------
  相关解决方案