按照下面算法编一个程序,将两个字符串连接起来,不能使用strcat函数

1.定义整型变量i.j,字符串s1.s22.输入字符串s1.s23.当字符串s1尚未结束,改变字符串s1的下标,使之到s1结束处4.当字符串s2尚未结束,将字符串s2逐个... 1.定义整型变量i.j,字符串s1.s2
2.输入字符串s1.s2
3.当字符串s1尚未结束,改变字符串s1的下标,使之到s1结束处
4.当字符串s2尚未结束,将字符串s2逐个字符连接到字符串s1的后面
5.为字符串s1添加结束标志
6.输出连接后的字符串
用c++ 6.0
展开
 我来答
失落世界
推荐于2017-12-16 · TA获得超过110个赞
知道答主
回答量:63
采纳率:0%
帮助的人:40万
展开全部
#include<stdio.h>
int main()
{
int i=0,j=0,index=0;
char str1[50]={0};//存放拼接字符串1
char str2[50]={0};//存放拼接字符串2
char str12[100]={0};//存放拼接完的字符串
printf("请输入拼接的第一个字符串:");
scanf("%s",&str1);
printf("\n请输入拼接的第二个字符串:");
scanf("%s",&str2);
while(str1[i]!='\0')//获取长度
{
i++;
}
while(str2[j]!='\0')
{
j++;
}
for(index=0;index<i-1;index++)//不放字符串结束符
str12[index]=str1[index];//把s1放入目标数组
for(index=0;index<j;index++)
str12[index+i]=str2[index];
printf("\n拼接后的字%s",str12);打印拼接后字符串
getchar();
getchar();
return 0;
}
如果用VC++6.0,不能使用字符指针,进行 本程序的编写,因为下标[]只用于数组,否则将出现非法访问的情况
故定义为字符数组进行操作

纯手打,非copy,人脑思考,望采纳
追问
str[ ]是strcat函数吗 题目说不能使用
追答
不是,那是定义的字符串,你是学C的?C中的函数名都是唯一的,所以strcat就是strcat,不会是str[],而且函数名定义里不能有字母,数字,下划线以外的字符,而且必须长度在30个字符(视编译器而定)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式