您的位置:首页 > 移动开发

山科大oj--字符串的连接 之一 (Append Code)

2016-12-05 11:41 375 查看
Description

将输入的两个字符串连接在一起输出。

编写一个函数str_cat()求两个串的连接:

原型:char * str_cat(char * t, char * s);

功能:把串s连接到串t之后,返回值是串t。

函数的调用格式见“Append Code”。

Invalid Word(禁用单词)错误:在解决这个题目时,某些关键词是不允许被使用的。如果提交的程序中包含了下列的关键词之一,就会产生这个错误。

被禁用的头文件:string.h、stdlib.h。

被禁用的库函数:strcat()、strncat()、memcat()、strcpy()、strncpy()、memcpy()等。

Input

输入为多组,每组包括两行。第一行为一个字符串s,第二行为字符串str。s、str的字符总数均不超过100个。

Output

把串s的内容连接到串str之后,输出串str。

输出两遍,一遍是测试返回值,一遍是测试str。

Sample Input

Look!

I love china!

Sample Output

I love china! Look!

I love china! Look!

HINT

str_cat()的返回值参考标准库函数strcpy()、strcat()、strchr()的设计思路:返回指向目标串的指针。

Append Code

int main()
{
char s[MAX_STR_LEN], str[MAX_STR_LEN], *p;
while(gets(s) != NULL && gets(str) != NULL)
{
p = str_cat(str, s);
puts(p);
puts(str);
}
return 0;
}


+++++++++++++++++++++++++++++++++++++++++++++++++

#include<stdio.h>
#define MAX_STR_LEN 101
char * str_cat(char * t, char * s)
{
char  *x=t;
while(*x++!='\0');
x=x-1;
while(*s!='\0')
*x++=*s++;
*x=0;
return t;
}

int main()
{
char s[MAX_STR_LEN], str[MAX_STR_LEN], *p;
while(gets(s) != NULL && gets(str) != NULL)
{
p = str_cat(str, s);
puts(p);
puts(str);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oj