3087 - 【设计型】第9章: 指针 9.14 字符串的拷贝

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 128 MB

请同学们学习完下一章之后再回来结合指针做。

----------------------------------------------------------------------------------------------------------------------------------------------------------

编写一函数,完成一个字符串的拷贝,要求用字符指针实现。在主函数中输入任意字符串,并显示原字符串,调用该函数之后输出拷贝后的字符串。

题目输入

一个字符串长度不超过80

题目输出

两行数据:

OldString=“原字符串”

NewString=“复制之后字符串”

输入/输出样例

输入格式

Bo/Bo/Lao/Shi

输出格式

OldString=Bo/Bo/Lao/Shi
NewString=Bo/Bo/Lao/Shi

C语言解答

#include <stdio.h>
void copy(char *pa,char *pb);
int main(void)
{
	char a[80],b[80];
	gets(a);
	printf("OldString=%s",a);
	copy(a,b);
	printf("\nNewString=%s",b);
	return 0;
}
void copy(char *pa,char *pb)
{
	while(*pa != '\0')
	{
		*pb=*pa;
		pa++;
		pb++;
	}
	*pb='\0';
}

C++解答

#include<bits/stdc++.h>
using namespace std;
int main()
{
	char s1[80];
	cin>>s1;
	char *s2 = new char[strlen(s1)+1];
	strncpy(s2,s1,strlen(s1));
	cout<<"OldString=" << s1 << endl;
	cout<<"NewString="<< s2 << endl;
	delete []s2;
	return 0;
}