| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 539 人关注过本帖
标题:急急急!!求帮助啊!!
取消只看楼主 加入收藏
IT飞飞
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2012-9-8
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:3 
急急急!!求帮助啊!!
#include "stdio.h"
#include "conio.h"
#include"string.h"
#define MAXSIZE 100

typedef  struct
{
    char str[MAXSIZE];
    int length;


}seqstring;
int i,result;

seqstring *s,*s1,*s2;
seqstring *creatstring(seqstring *s)
{
  int i=0;char ch;
  while((ch=getchar())!='\0')  


  {
     s->str[i]=ch;
     i++;
  
  }


   return s;


}

   
  int comparestr(seqstring *s1,seqstring *s2)
  {   
     int i,len;
      
      if(s1->length<s2->length)
          len=s1->length;
       else len=s2->length;


    while(i<len)
     {
        if(s1->str[i]>s2->str[i])
        return (result=1);
         else if(s1->str[i]<s2->str[i]) return (result=-1);
               else
                    s1->str[i]=s2->str[i]; return(result=0);
     
                     i++;
     }
  }

    void main()
    {
     printf("初始化字符串s1");
   
     creatstring(s1);
    printf("初始化字符串s2");
    creatstring(s2);
    comparestr(s1,s2);

    printf("result=%d",result);
      return 0;
    }用数据结构中的传5实现两个字符串的比较 编译的时候没问题 可咋运行不出结果 在win tc下运行的
搜索更多相关主题的帖子: result return include 
2012-09-26 15:12
IT飞飞
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2012-9-8
收藏
得分:0 
回复 2楼 寒风中的细雨
直接在前面加上S1=(seqstring*)malloc(sizeof(seqstring));
s2=seqstring*)malloc(sizeof(seqstring));就可以吗?
  else那条语句是 如果两个字符串相等 就返回 0;
2012-09-26 22:02
IT飞飞
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2012-9-8
收藏
得分:0 
回复 3楼 IT飞飞
#include "stdafx.h"


#include "stdio.h"
#include "conio.h"
#include"string.h"
#include"stdlib.h"
#define MAXSIZE 100

typedef  struct
{
    char str[MAXSIZE];
    int length;


}seqstring;
int i,result;

seqstring *s,*s1,*s2;

seqstring *init_seqstring(seqstring*s)
{
  s=(seqstring*)malloc(sizeof(seqstring));
  return s;
}


seqstring *creatstring(seqstring *s)
{
  int i=0;char ch;
  while((ch=getchar())!='\0')  


  {
     s->str[i]=ch;
     i++;
  
  }


   return s;


}

   
  int comparestr(seqstring *s1,seqstring *s2)
  {   
     int i,len;
      
      if(s1->length<s2->length)
          len=s1->length;
       else len=s2->length;


    while(i<len)
     {
        if(s1->str[i]>s2->str[i])
        return (1);
         else if(s1->str[i]<s2->str[i]) return (-1);
               else
                    s1->str[i]=s2->str[i]; return(0);
     
                     i++;
     }
  }

    void main()
    {int m;
  init_seqstring(s1);

   init_seqstring(s2);
     printf("初始化字符串s1");
   
     creatstring(s1);
    printf("初始化字符串s2");
    creatstring(s2);
   m=comparestr(s1,s2);

    printf("m=%d",m);
      getch();
    }
程序还是不能运行
2012-09-26 22:21
IT飞飞
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2012-9-8
收藏
得分:0 
回复 5楼 zhu224039
   while(i<len)         ---------》这个函数 请问你想他做什么呢?  如果两个字符串"wo ai"和"wo ai ni"比较会怎么执行,请楼主推敲算法
     先比较两个字符串的长度 然后把短的字符串的长度给len
  你看我后面回的哪个帖子  帮忙找找错误  编译能通过 就是运行的时候有错误  谢谢啊!
2012-09-26 22:41
快速回复:急急急!!求帮助啊!!
数据加载中...
 
   



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

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