| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 891 人关注过本帖
标题:天哪,实在想不懂哪错了,要抓狂了
取消只看楼主 加入收藏
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
结帖率:97.22%
收藏
已结贴  问题点数:30 回复次数:3 
天哪,实在想不懂哪错了,要抓狂了
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <stdbool.h>
#define A 128
#define B 50

bool str_in(char **p);
void str_pai(char*p[],int n);
void str_lie(char **p1,char **p2);
void str_out(char*p[],int n);

int main(void)
{
    int count=0;
    char *pS[B]={NULL};
    printf("请输入文本:\n\n");
    for(count=0;count<B;count++)
    if(!str_in(&pS[count]))
        break;
    str_pai( pS,count);
    str_out( pS,count);
    return 0;
}
bool str_in(char **p)
{
    char buffer[A];
    if(gets(buffer)==NULL)
    {
        printf("读取失败\n");
        exit(1);
    }
    if(buffer[0]=='\0')
        return false;
    *p=(char*)malloc(strlen(buffer)+1);
    if(*p==NULL)
    {
        printf("内存失败,程序终止\n");
        exit(1);
    }
    strcpy(*p,buffer);
    return true;
}

void str_pai( char *p[],int n)
{
    int i=0;
    bool answer=false;
    while(!answer)
    {
       answer=true;
       for(i=0;i<n;i++)
       {
           if(strlen(p[i])<strlen(p[i+1]))
           {
              str_lie(&p[i],&p[i+1]);
              answer=false;
           }
       }
    }
}

void str_lie(char **p1,char **p2)
{
    char *pt=*p1;
        *p1=*p2;
        *p2=pt;
}

void str_out(char *p[],int n)
{
    int i=0;
    printf("你的输出按字母顺序排列如下:\n");
    for(i=0;i<n;i++)
    {
        printf("%s\n", p[i]);
        free(p[i]);
        p[i]=NULL;
    }
}
搜索更多相关主题的帖子: void count return include 
2012-11-04 00:52
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
收藏
得分:0 
输入完后会中断,求解啊...

I have not failed completely
2012-11-04 00:53
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
收藏
得分:0 
其实程序的功能很简单,就是把输入的文本由长到短输出,只不过要求用函数来做(我也在检查,好像还真查不出来啊...)

I have not failed completely
2012-11-04 14:40
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
收藏
得分:0 
回复 6楼 yaobao
我用你的方法已经找到漏洞了,建议很不错,谢了  

I have not failed completely
2012-11-04 15:46
快速回复:天哪,实在想不懂哪错了,要抓狂了
数据加载中...
 
   



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

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