c语言编程: 将两个字符串合并成一个字符串
作者&投稿:运平 (若有异议请与网页底部的电邮联系)
如果是C语言,有一个函数是strcat
在函数库string.h,功能就是合并字符串
例如:
#include#includechar a[10] = {"12"};char b[10] = {"bc"};int main(){strcat(a,b);printf("%s
",a);return 0;}
1、方法一:通过c=[a1,b1]格式拼接
第一步打开matlab的命令行窗口,输入a1='abcd123';b1='decf456';c=[a1,b1],按回车键,如下图所示:
2、第二步可以看到c='abcd123decf456',成功将两个字符串进行拼接起来了,如下图所示:
3、方法二:通过strcat函数进行拼接
第一步在命令行窗口中输入d=strcat(a1,b1),按回车键,如下图所示:
4、第二步可以看到d='abcd123decf456',实现了和方法一一样的效果,拼接了两个字符串,如下图所示:
5、方法三:通过sprintf函数拼接多个字符串
第一步输入a1='abcd123';b1='decf456';c1=123456;s=sprintf('%s%s%d',a1,b1,c1),按回车键,如下图所示:
6、第二步可以看到s='abcd123decf456123456',成功将多个字符串整型拼接起来了,如下图所示:
{
char string[20]="12345";
char *str1 = "abcdefghi";
strncpy(string+5, str1, 9);
string[14] = '\0';
printf("%s\n", string);
getch();
return 0;
}
注意string的大小一定足够放下第二个字符串
#include<stdio.h>
int main(void)
{
char *str1 ="12345";
char *str2 = "abcdefghi";
int i=0;
while(str1=='\0')
{
strncpy(str1,str2,i);
str++;
i++;
}
str1[i+length(str2)] = '\0';
printf("%s\n", str1);
getch();
return 0;
}
宜疫真瑞: 先加头文件#include<string.h> char a[10]="123";char b[10]="abc";strcat(a,b); //连接两个字符串,连接后的字符串存放在a中,数组a中有足够空间printf("%s",a); //输出连接后的字符串或: #include<string.h> char a[10]="123"; char b[10]="abc"; char c[20]; strcpy(c,a); //把串a复制到有足够空间的c中 strcat(c,b); //把b连接到c的串尾
昌宁县13426512590: C语言中,合并两个字符串为一个新的字符串,确保在新字符串中,两个字符串的所有字符仅出现一次 - ?
宜疫真瑞: #include<stdio.h> #include <string.h> int main(){ char s1[]="happy"; char s2[]="NewYear"; char s3[999]; int i,j,c,m=0; s3[m]=s1[0];m++; for (j=1;s1[j]!='\0';j++){ c=0; for (i=0;i<m;i++) if (s3[i]==s1[j]) {c=1;break;}; if (c==0) {s3[m]=s1[j];m++;}; } for (j=0;...
昌宁县13426512590: C语言中如何将两个字符串加在一起 - ?
宜疫真瑞: 可以文件中的strcat函数 char *a="123"; char *b = "abc"; strcat(a,b)即可,更多的字符串操作可以看一下string.h头文件中 有好多封好的, 如果不想用的话就可以自己写一个函数 函数内容:1.获取两个字符串的总长度,如total_len=len1+len2然后申请一个动态的数组大小为total_len 然后把字符串中的内容依次放进去就可以了.
昌宁县13426512590: c编程将这两个字符串进行合并操作,生成一个新的字符串?
宜疫真瑞: int a(char *c, char *d) { int b[128] = {0}; int i; for ( i = 0; i < strlen(c); i++) { if( b[c[i]] == 0) b[c[i]] += 1; else break; } for ( i = 0; i < strlen(d); i++) { if( b[d[i]] == 0) b[d[i]] += 1; else break; } for( i = 0; i < 128; i++) { if( b[i] > 0) printf("%d ", b[i]); } return; }
昌宁县13426512590: C语言里如何将多个字符串数据合成一个数据? - ?
宜疫真瑞: 主要有两种方法,一个是字符串连接操作strcat,另一个是格式化输出sprintf,主要代码如下,//程序功能实现字符串合并 #include <stdio.h> #include <string.h> int main(int argc, char *argv[]) {char name1[32]="456",name2[32]="123",name...
昌宁县13426512590: C语言 合并字符串 - ?
宜疫真瑞: 1 2 3 4 5 6 7 8 9 10 11 12#include<iostream>; #include<cstring> usingnamespacestd; intmain() {chara[100],b[100],c[100];gets(a);gets(b); cout<<strcat(a,b)<<endl;return0; }
昌宁县13426512590: 急求用c语言编写两字符串的并集 - ?
宜疫真瑞: 举个例子给你,其实可以用C的标准库函数,不过自己写最好了,比较简单,练下手.#include <stdio.h>#include <stdlib.h> int main() { char *str1="the first string"; char *str2="the second string"; char *strs; int i=0;strs=(char *)malloc(sizeof(char...
昌宁县13426512590: C语言 合并字符串数组 - ?
宜疫真瑞: 做如下几个方面的修改: 1:声明的STK和定义的保持一致 2:STK中返回的是局部数组变量,这样是不能返回到主函数的 3:字符串的末尾需要加'\0'. #include <stdio.h> #include <string.h> char* Stk(char*, char*, char*);//声明合并字符串函数 int ...
昌宁县13426512590: 用C语言编程,输入两个字符串,将这两个字符串连在一起. - ?
宜疫真瑞: char str1[50],str2[50]; char *find; char *write; find=str1; write=str2; scanf("%s%s",str1,str2); for(;*(++find);); for(;*find++=*write++;); printf("%s",str1);
昌宁县13426512590: C语言编程:编一程序,将两个字符串联接起来,不要用Strcat函数. - ?
宜疫真瑞: 思路:输入两个字符串a和b,首先找到第一个字符串a的结束位置,接着把b的所有元素放到a的末尾,最后加上结束标志. 参考代码: #include<stdio.h> void mystrcat(char a[],char b[]){int i=0,j=0;while(a[i++]!='\0');//找到a的结束位置i--;...