解题思路:
一开始使用string.h的头文件,然后思考有没有不需要借用其他函数,自己进行可链接的函数,然后用指针想出下面的方法。仅仅是用指针的一种学习。


参考代码:

#include<stdio.h>
void main(){
	char a[100], b[100], c[200];   //定义三个字符数组
	char *p = gets(a);             //输入字符串a,并用p指针指向a
	char *q = gets(b);             //输入字符串a,并用q指针指向b
	char *sum = c;                 //用sum指针指向c
	/*接下来用指针进行读取*/
	/*这里有多种形式进行读写,注意指针的移动*/
	/*这里为了方便学习写出两种形式*/
	while (*sum++ = *p++){
		if (*p == '\0')
			break;
	}
	while (*q != '\0'){
		*sum++ = *q++;
	}
	*sum = '\0';      //简单说,为了让puts停止;可以把这一句删去看效果
	puts(c);          //输出链接后的字符串
}

当然了,这个是个人习惯的写法,这时候如果你杠题意,是写一个函数,然后调用,那么请看下面参考代码:

#include<stdio.h>
void strlink(char *p,char *q,char *sum);
void main(){
	char a[100], b[100], c[200];   //定义三个字符数组
	char *p = gets(a);             //输入字符串a,并用p指针指向a
	char *q = gets(b);             //输入字符串a,并用q指针指向b
	char *sum = c;                 //用sum指针指向c
	strlink(a,b,c);
	puts(c);          //输出链接后的字符串
}
void strlink(char *p,char *q,char *sum){
	while (*sum++ = *p++){
		if (*p == '\0')
			break;
	}
	while (*q != '\0'){
		*sum++ = *q++;
	}
	*sum = '\0';      //简单说,为了让puts停止;可以把这一句删去看效果
}


点赞(0)
 

0.0分

3 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 1 条评论

CCK 2年前 回复TA
”不需要string.h这个头文件,也不要无脑gets,puts,而是真的有链接的效果“,这是我书写这段代码的最初想法。