当前位置: 代码迷 >> C语言 >> 我的代码错在什么地方
  详细解决方案

我的代码错在什么地方

热度:274   发布时间:2006-09-08 08:38:55.0
我的代码错在什么地方

这一题是比较字符串大小!
但是要用主函数与自定义函数来做!

帮小弟看看这是怎么错的!! 只能用这个方法!

小弟还有个问题,二维数组与二级指针有什么不同。。。。



/**********************
将5个地区的名称排序,用主函数与自定义函数
**********************/
#include <stdio.h>
#include <string.h>
#define N 5
void abc(char num[N]);
void main()
{
char *num[N]={"nanjing","xuzhou","guangzhou","beijing","shanghai"};
int i ;
printf("排序前5个地区城市的名称为:\n");
for(i = 0 ; i <N ; i ++)
{
puts(num[i]);
}

abc(num[N]);//调用自定义函数
printf("排序后5个地区城市的名称为:\n");
for(i = 0 ; i <N ; i ++)
{
puts(num[i]);
}
}
void abc(char num[N])
{
int i , j ;
char **temp ;
for(i = 0 ; i < N ; i++)
{
for(j = 0 ; j < N - i - 1 ; j++)
{
if(strcmp(num[j] , num[j+1])<0)//比较大小与交换
{
strcpy(temp , num[j]);
strcpy((num[j]) , (num[j+1]));
strcpy((num[j+1]) , temp);
}
}
}
}

搜索更多相关的解决方案: 函数  代码  定义  include  

----------------解决方案--------------------------------------------------------
以下是引用未来的牛人在2006-9-8 8:38:55的发言:



小弟还有个问题,二维数组与二级指针有什么不同。。。。



一个是数组 一个是指针
我先看看程序去


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

不行了
才发现要上课了
让别人给答吧



我只能告诉你 你的错误是越界问题
你把N改为6试试就知道了

[此贴子已经被作者于2006-9-8 8:50:43编辑过]


----------------解决方案--------------------------------------------------------
不是的!
我已经改过了!
这一题我做了2天了!要是光用主函数做能运行,但是这样却做不出来!
郁闷死了
----------------解决方案--------------------------------------------------------
哪位大哥帮我看看阿!
----------------解决方案--------------------------------------------------------
void abc(char num[N])
{
int i , j ;
char **temp ;
for(i = 0 ; i < N ; i++)
{
for(j = 0 ; j < N - i - 1 ; j++)
{
if(strcmp(num[j] , num[j+1])<0)//比较大小与交换
{
strcpy(temp , num[j]);
strcpy((num[j]) , (num[j+1]));
strcpy((num[j+1]) , temp);
}
}
}
}

1。temp没有空间 malloc 一下
2。temp是一级指针就行,为什么用2级的呢?
3。你指针数组里面元素的大小都不同,你怎么能strcpy好呢
你解决这几个问题吧
----------------解决方案--------------------------------------------------------
要不你用2级的做一个索引也可以
返回2级指针
----------------解决方案--------------------------------------------------------

你说的问题我都知道!
我也调试过了!
就是不知道怎么改的~
我都郁闷死了!
你能帮我改好发上来我看看行吗?它已经困扰我2天了


----------------解决方案--------------------------------------------------------
你说的问题我都知道!
我也调试过了!
就是不知道怎么改的~
我都郁闷死了!
你能帮我改好发上来我看看行吗?它已经困扰我2天了


谁能把正确的代码发上来我看看!!
----------------解决方案--------------------------------------------------------
不用指针,
全部用数组,可以吗
----------------解决方案--------------------------------------------------------
  相关解决方案