天天看點

字元串連結

将給定的字元串連接配接起來。書中的算法描述如下:
字元串連結
圖:字元串連接配接算法

輸入

輸入包括多對字元串,每對字元串占一行,用空格隔開。每個字元串隻包含數字和英文字母大小寫且長度不超過100。

輸出

将後一個字元串連接配接到前一個字元串後面,如果結果字元串長度超過100,輸出一行“Result String is cutted.”否則将結果字元串輸出來。

樣例輸入

hello acmclub      
123 456      
doyour best      

樣例輸出

helloacmclub      
123456      
doyourbest      

提示

*** 提示已隐藏,點選此處可顯示 ***

[ 送出][ 狀态]

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
typedef struct
{
    char *data;
    int length;
}String;
String Concat(char S1[100],char S2[100],int S1_len,int S2_len)
{
    int i;
    String S;
    S.length=S1_len+S2_len;
    S.data=(char *)malloc((S1_len+S2_len)*sizeof(char));
    for(i=0;i<S1_len;i++)
        S.data[i]=S1[i];
    for(i=0;i<S2_len;i++)
        S.data[i+S1_len]=S2[i];
    return S;
}
int main()
{
    int i,S1_len,S2_len;
    char S1[128],S2[128];
    String S;
    while(scanf("%s%s",S1,S2)!=EOF)
    {
        S1_len=strlen(S1);
        S2_len=strlen(S2);
        S=Concat(S1,S2,S1_len,S2_len);
        if(S.length>100)
            printf("Result String is cutted.");
        else
            for(i=0;i<S.length;i++)
        printf("%c",S.data[i]);
    printf("\n");
    }
    return 0;
}
           

繼續閱讀