| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 598 人关注过本帖
标题:我的这个程序有点问题,请高手指教一下。感激~
只看楼主 加入收藏
zhuweinact
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-6-19
收藏
 问题点数:0 回复次数:4 
我的这个程序有点问题,请高手指教一下。感激~
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 100

void sorted(char *line,int n)
{
    int i,j;
    char *temp,*p[N];
    for(i=0;i<n;i++)
    {
        scanf("%s",line);
        p[i]=(char*)calloc(strlen(line),1);
        strcpy(p[i],line);
    }
    for(i=1;i<n;i++)
        for(j=0;j<n-1;j++)
        {
            if(strcmp(p[j],p[j+1])>0)
            {
                temp=p[i];
                p[j]=p[j+1];
                p[j+1]=temp;
            }
            
        }
        
}

void main()
{
    
    int i,n;
    char line[N];
    
    printf("请输入n= ");
    scanf("%d",&n);
    printf("请输入%d个字符串:\n",n);
    
    
    sorted(line,n);
    printf("字符串排序后为:\n");
    //for(i=0;i<n;i++)
    printf("\n %s",line);
    
    //    printf("\n %s",line[i]);

    printf("\n");
}

字符串的排列问题,就是打印不出排列后的全部字符串。

请高手指教一下。。。qq 285847630 感激不尽。。。
搜索更多相关主题的帖子: 感激 include int 
2008-06-19 12:42
无语雨季
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-6-19
收藏
得分:0 
回复 1# zhuweinact 的帖子
这个程序思路有些问题的
C语言实参给形参传值,是"值传递",所以void sorted(char *line,int n)形参line指向的地址改变了,但对main函数里的实参line没有影响的.
应该这样,不过这里temp是这样定义char temp;
    if(strcmp(p[j],p[j+1])>0)
            {
                temp=*p[i];
                *p[j]=*p[j+1];
                *p[j+1]=temp;
            }
再说你开辟了内存空间也没有释放也是不良习惯.
我没有仔细去看,你自己上机运行下
实现字符串排序可以有更简单的办法.
2008-06-19 13:18
爱喝牛奶的猫咪
Rank: 1
来 自:QQ群46520219
等 级:禁止访问
帖 子:513
专家分:0
注 册:2008-6-16
收藏
得分:0 
楼上的解释也有问题



[flash=400,300]http://yzfy.[/flash][color=white]
2008-06-19 13:44
now
Rank: 1
来 自:广州
等 级:新手上路
帖 子:544
专家分:0
注 册:2007-11-9
收藏
得分:0 
可在函数sorted()内实现输出:
printf("字符串排序后为:\n");
for(i=0;i<n;i++)
puts(p[i]);

GIS
Geographic Information System
你在哪里?——》你的坐标?
2008-06-19 14:01
无语雨季
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2008-6-19
收藏
得分:0 
[bo][un]爱喝牛奶的猫咪[/un] 在 2008-6-19 13:44 的发言:[/bo]

楼上的解释也有问题



http://yzfy.

请问我说的有什么错误?向你学习
2008-06-19 17:46
快速回复:我的这个程序有点问题,请高手指教一下。感激~
数据加载中...
 
   



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

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