| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 415 人关注过本帖
标题:【求助】看看哪里错了
只看楼主 加入收藏
lh2006713
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-11-9
收藏
 问题点数:0 回复次数:8 
【求助】看看哪里错了

【求助】看看哪里错了


#include<stdio.h>
#include<string.h>

#define N 10
#define M 3

void main()
{
char str[M][N]={"China","Australia","Canada"};
int j,s=0;
for(j=0;j<3;j++)
if(strcmp(str[j][N],str[j+1][N])>0)
{s=str[j][N];str[j][N]=str[j+1][N];str[j+1][N]=s;}
for(j=0;j<3;j++)
puts(str[j][N]);
}

题目要求的是
有3个国家名,要求按字母先后顺序排列,并且按顺序输出!!

搜索更多相关主题的帖子: 字母 include 
2007-11-18 13:01
lyixh
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2007-9-28
收藏
得分:0 
if(strcmp(str[j][N],str[j+1][N])>0)
{s=str[j][N];str[j][N]=str[j+1][N];str[j+1][N]=s;}
这儿肯定错了
str[j][N]是数组吗?
能付值给s吗?

2007-11-18 13:37
xDevil
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2007-8-31
收藏
得分:0 

#include<stdio.h>
#include<string.h>
#define N 10
#define M 3

void main()
{
char str[M][N]={"China","Australia","Canada"};
for(int i=65;i<=122;i++)
for(int j=0;j<=M;j++)
{
if(int(str[j][0])==i)
{
for(int k=0;k<N&&str[j][k]!=NULL;k++)
printf("%c",str[j][k]);
printf(" ");
}
}
}

2007-11-18 14:06
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
你引用元素啦,而不是一行.

倚天照海花无数,流水高山心自知。
2007-11-18 14:11
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
收藏
得分:0 
参数 是 指针

[此贴子已经被作者于2007-11-18 14:16:34编辑过]



自我放逐。。。
2007-11-18 14:15
lh2006713
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-11-9
收藏
得分:0 

能给个解决方案么?

2007-11-18 14:47
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
收藏
得分:0 
*str[j]

自我放逐。。。
2007-11-18 14:56
symos
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2007-9-15
收藏
得分:0 
回复:(lh2006713)【求助】看看哪里错了

if(strcmp(str[j][N],str[j+1][N])>0)
{s=str[j][N];str[j][N]=str[j+1][N];str[j+1][N]=s;}

字符串不能这样赋值,要用函数strcpy。
str[j][N]得换成str[j]

#include<stdio.h>
#include<string.h>
#define N 10
#define M 3

void main()
{
char str[M][N]={"China","Australia","Canada"};
char s[10];
int j;
for(j=0;j<3;j++)
if(strcmp(str[j],str[j+1])>0)
{
strcpy(s,str[j]);
strcpy(str[j],str[j+1]);
strcpy(str[j+1],s);
}
for(j=0;j<3;j++)
puts(str[j]);
}


2007-11-18 18:00
lh2006713
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2007-11-9
收藏
得分:0 
回复:(symos)回复:(lh2006713)【求助】看看哪里...

谢谢啊

2007-11-18 19:35
快速回复:【求助】看看哪里错了
数据加载中...
 
   



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

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