| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1011 人关注过本帖
标题:串链接中的问题
只看楼主 加入收藏
mbw1989
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-7-20
收藏
 问题点数:0 回复次数:4 
串链接中的问题
自认为编程技术还行,在做两个串链接时出现问题了,在此求助各位大大!
使用vc++
头文件stringconnet.h
#include <iostream.h>
#define TURE 1
#define FALSE 0
#define OVERFLOW -1
#define MAXSTRLEN 255
typedef char ElemType;
typedef    int Status;
typedef unsigned char SString[MAXSTRLEN+1];
Status connet(SString &T,SString S1,SString S2);
函数stringconnet.cpp
#include "stringconnet.h"
Status connet(SString &T,SString S1,SString S2)
{   int uncut;
    int k=1,j=1;
    if(S1[0]+S2[0]<=MAXSTRLEN)
    {
    while(S1[k]!='#')
    {
        T[k]=S1[k];
         k++;
    };
    while(S2[j]!='#')
    {
        T[k+1]=S2[j];
        k++;j++;
    };
    T[0]=S1[0]+S2[0];
    uncut=TURE;
    }
else if(S1[0]<MAXSTRLEN)
{
    while(S1[k]!='#')
    {
        T[k]=S1[k];
        k++;
    };
    while(j<=MAXSTRLEN-S1[0])
    {
        T[k]=S2[j];
        k++;j++;
    };
    T[0]=MAXSTRLEN;
    uncut=FALSE;
}
else
{
    k=1;
    while(k<=MAXSTRLEN)
    {
        T[k]=S1[k];
        k++;
    };
    T[0]=MAXSTRLEN;
    uncut=TURE;
}
return uncut;
}
main函数
#include "stringconnet.h"
void main()
{
    SString j,k,l;
    int i;
    cout<<"please enter the string j:";
    for(i=0;j[i-1]!='#';i++)
    {cin>>j[i];
    };
    cout<<"please enter the string k:";
    for(i=0;k[i-1]!='#';i++)
    {cin>>k[i];
    };
    cout<<"now connet two string:";
    connet(l,j,k);
    for(i=0;l[i]!='\0';i++)
        cout<<l[i];
}
觉得主函数有问题,请求帮助!本人十分感谢!!!!!
搜索更多相关主题的帖子: HELP 
2008-11-05 21:23
lovemimi
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2008-10-12
收藏
得分:0 
给你改了一下,不要说那种以为自己很强的话,学这个的强的多得是,包括你,包括我,唯一需要的就是努力
Status connet(SString &T,SString S1,SString S2)
{   int uncut;
    int k=1,j=1;
    if(S1[0]+S2[0]<=MAXSTRLEN)
    {
    while(S1[k]!='#')
    {
        T[k]=S1[k];
         k++;
    };
   do
    {
        T[k]=S2[j];
        k++;j++;
    }while(S2[j-1]!='#');

    T[0]=S1[0]+S2[0];
    uncut=TURE;
    }
else if(S1[0]<MAXSTRLEN)
{
    while(S1[k]!='#')
    {
        T[k]=S1[k];
        k++;
    };
    while(j<=MAXSTRLEN-S1[0])
    {
        T[k]=S2[j];
        k++;j++;
    };
    T[0]=MAXSTRLEN;
    uncut=FALSE;
}
else
{
    k=1;
    while(k<=MAXSTRLEN)
    {
        T[k]=S1[k];
        k++;
    };
    T[0]=MAXSTRLEN;
    uncut=TURE;
}
return uncut;
}


void main()
{
    SString j,k,l;
    int i;
    cout<<"please enter the string j:";
    for(i=0;j[i-1]!='#';i++)
    {cin>>j[i];
    };
    cout<<"please enter the string k:";
    for(i=0;k[i-1]!='#';i++)
    {cin>>k[i];
    };
    cout<<"now connet two string:";
    connet(l,j,k);
    
    for(i=1;l[i]!='#';i++)
        cout<<l[i];
}
2008-11-05 22:34
mbw1989
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-7-20
收藏
得分:0 
谢谢啊,我的强只是在自嘲,毕竟这是个简单的程序
2008-11-06 22:20
lovemimi
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2008-10-12
收藏
得分:0 
其实这个程序还有一点问题,就是字符串长度上,今天太晚了,明天有时间的话再说
2008-11-07 00:44
mbw1989
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2008-7-20
收藏
得分:0 
不用了,我已经改了!长度也改了!
2008-11-07 23:07
快速回复:串链接中的问题
数据加载中...
 
   



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

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