| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 813 人关注过本帖
标题:[求助]如何把2维字符串数组的实参带给行参
只看楼主 加入收藏
syclee
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-7-31
收藏
 问题点数:0 回复次数:6 
[求助]如何把2维字符串数组的实参带给行参
题目是:用指针数组编写一个函数,用于将5个预定义的国家名排序,在main函数中调用该函数完成排序,并输出排序前后的信息
我写的是:
#include <stdio.h>
#include <string.h>
void sort(char *[]);
void main()
{
char str[5][20];
int i;
printf("请输入5个国家的名字:\n");
for(i=0;i<5;i++)
{
fflush(stdin);
gets(str[i]);
}
sort();//我的问题是 我现在这里怎么吧实参带给行参
}
void sort(char *name[])
{
int j,i;
char dummy[20];
for(i=1;i<5;i++,name++)
{
for(j=1;j<=5-i;j++)
{
if(strcmp(name[j-1],name[j])>0)
{
strcpy(dummy,name[j-1]);
strcpy(name[j-1],name[j]);
strcpy(name[j],dummy);
}
}
}
for(i=0;i<5;i++)
printf("%s\n",name[i]);
}
搜索更多相关主题的帖子: 字符 
2007-07-31 23:09
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1029
专家分:177
注 册:2007-5-10
收藏
得分:0 
类型不一致,没办法传
你可以再定义一个char *数组,分别赋值为str[0],str[1],...,然后再传。
2007-07-31 23:34
syclee
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-7-31
收藏
得分:0 

你的意思是不是 我这里应该定义为
char str[20];
char *str[5];

2007-07-31 23:37
syclee
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-7-31
收藏
得分:0 

循环的把 gets(str) 付给 指针?

2007-07-31 23:38
medicihophy
Rank: 1
等 级:新手上路
威 望:1
帖 子:102
专家分:0
注 册:2007-7-28
收藏
得分:0 

#include <stdio.h>
#include <string.h>
void sort(char **);
void main()
{
char str[5][20];
char* mystring[5];
for(int i=0;i<5;i++)
{
mystring[i]=str[i];
}
printf("请输入5个国家的名字:\n");
for(i=0;i<5;i++)
{
gets(str[i]);
}
sort(mystring);//我的问题是 我现在这里怎么吧实参带给行参
}
void sort(char **name)
{
int i,j;
char dummy[20];
for(i=1;i<5;i++)
{
for(j=1;j<=5-i;j++)
{
if(strcmp(*(name+j-1),*(name+j))>0)
{
strcpy(dummy,*(name+j-1));
strcpy(*(name+j-1),*(name+j));
strcpy(*(name+j),dummy);
}
}
}
for(i=0;i<5;i++)
printf("%s\n",*(name+i));
}

这样改就可以得出结果了,不过好像不是很好啊!


2007-08-01 14:26
野比
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:1627
专家分:516
注 册:2007-5-24
收藏
得分:0 
用一个5长度的指针数组...分别指向各字符串.

女侠,约吗?
2007-08-02 00:23
virusplayer
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-8-2
收藏
得分:0 
还是版主厉害啊
用指针数组代替二维数组接收各字符串
2007-08-02 09:17
快速回复:[求助]如何把2维字符串数组的实参带给行参
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030575 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved