用C语言写一个函数,将两个字符串连接。 用C语言编程:编写一个函数,将两个字符串连接起来
\u7528C\u8bed\u8a00\uff1a\u5199\u4e00\u4e2a\u51fd\u6570\uff0c\u5c06\u4e24\u4e2a\u5b57\u7b26\u4e32\u8fde\u63a5\u9009\u81ea\uff1a\u300a\u7a0b\u5e8f\u903b\u8f91\u53caC\u8bed\u8a00\u300b\uff0c\u672c\u89c6\u9891\u4e3a\u5b57\u7b26\u4e32\u7684\u7b2c04\u5c0f\u8282\u3002\u4e3b\u8981\u8bb2\u89e3\u56db\u4e2a\u5e38\u7528\u7684\u5b57\u7b26\u4e32\u5904\u7406\u51fd\u6570\uff0c\u5305\u62ec\uff1a\u6c42\u5b57\u7b26\u4e32\u7684\u957f\u5ea6\u3001\u5b57\u7b26\u4e32\u7684\u8d4b\u503c\u3001\u5b57\u7b26\u4e32\u7684\u8fde\u63a5\u5df2\u7ecf\u5b57\u7b26\u4e32\u5927\u5c0f\u7684\u6bd4\u8f83\u3002\u5177\u4f53\u6709\u6848\u4f8b\u8bb2\u89e3\u3002
1\u3001\u65b0\u5efa\u4e00\u4e2a\u5de5\u7a0b\u548c.c\u6587\u4ef6\uff0c\u8f93\u5165\u5934\u6587\u4ef6\u548c\u4e3b\u51fd\u6570\u3002
2\u3001\u5b9a\u4e49\u53d8\u91cf\u7c7b\u578b\u3002
3\u3001\u8c03\u7528cpy\u51fd\u6570\u3002
4\u3001\u5b9a\u4e49\u4e00\u4e2a\u51fd\u6570\uff0c\u5e76\u5b9a\u4e49\u53d8\u91cf\u7c7b\u578b\u3002
5\u3001\u7528\u4e00\u4e2aFor \u8bed\u53e5\u548cif\u8bed\u53e5\u5224\u65ad\u662f\u5426\u4e3a\u5143\u97f3\u3002
6\u3001\u6700\u540e\u52a0\u4e00\u4e2a\u5b57\u7b26\u4e32\u7ed3\u675f\u7b26\uff0c\u5e76\u5728\u4e3b\u51fd\u6570\u4e2d\u8f93\u51fa\u3002
7\u3001\u7f16\u8bd1\u3002\u8fd0\u884c\u3002
2、示例
#include <stdio.h>
char *strcat(char *str1, char *str2)
{
if((str1==NULL)||(str2==NULL)) throw "Invalide arguments!";
char *pt = str1;
while(*str1!='\0') str1++;
while(*str2!='\0') *str1++ = *str2++;
*str1 = '\0';
return pt;
}
int main()
{
char a[]= "markyuan";
char b[]= "yyyyy";
char *cat = strcat(a,b);
printf("%s\n",cat);
return 0;
}
#include<stdio.h>
方法一:如mtcat所说,直接用strcat函数
方法二:编程实现strcat的功能
void main()
{ char s1[80],s2[80];
int i=0,j=0;
puts("input two strings:");
gets(s1);
gets(s2);
while(s1[i]!='\0') i++;
while((s1[i++]=s2[j++])!='\0');
printf("result:%s\n",s1);
}
char * string(char a[],char b[])
{
int c,d;
c=strlen(a); //计算字符串a的长度
d=strlen(b); //计算字符串b的长度
char p[c+d+1]; // 建立一个足够存放a和b的字符数组
strcpy(p,a); //将a拷进新建的数组中
strcat(p,b); //把b连接在字符串a的后面
return p;
}
字符串连接:即将字符串b复制到另一个字符a的末尾,并且字符串a需要有足够的空间容纳字符串a和字符串b。
#include<stdio.h>
void mystrcat(char a[],char b[]){//把a和b拼接起来
int i=0,j=0;
while(a[i++]!='\0');
i--;
while(b[j]!='\0'){
a[i++]=b[j++];
}
a[i]='\0';
}
int main()
{
char a[100],b[100];
gets(a);
gets(b);
mystrcat(a,b);
puts(a);
return 0;
}
/*
运行结果:
abc
def
abcdef
*/
strcat(s1,s2);
合并字符串s1,s2,并将其结果保存在s1中.
绛旓細include<string.h> void lianjie(char a[],char b[]);{ strcat(a,b);printf("%s",a);} main(){ char s[40],c[20];printf("qing shuru 1 zifushuzu:\n");gets(s);printf("qing shuru 2 zifushuzu:\n")gets(c);lianjie(s,c);} ...
绛旓細涓锛歝har* catStr(char str1[],char str2[]){ strcat(str1,str2);return str1锛泒 浜岋細char* catStr(char str1[],char str2[]){ int i=0锛沬nt lenstr1=0;lenstr=strlen(str1)for(i;i<=strlen(str);i++){ str1[lenstr++]=str2[1];} return str1锛泒 ...
绛旓細棣栧厛锛氬惊鐜粨鏉熸潯浠惰鏀逛负p[I]!='\0' ;鐒跺悗p2鐨勪笅鏍囦笉涓瀹氬拰p鐨勪笅鏍囩浉鍚岋紱鐪嬬湅鐨勬敼鐨勶紱include <stdio.h> include <stdlib.h> int main(){ char p[100];char p2[100];scanf("%s",p);int i=0,j=0; //瀹氫箟浜唈浣滀负鎷峱2鐨勪笅鏍 while(p[i]!='\0') //寰幆鏉′欢璇ユ槸!='\0'{...
绛旓細include<stdio.h> void main(){ char a[50]="i love";char b[50]="you";int i=0,j=0;while(a[i]!='\0')i++;while(b[j]!='\0')a[i++]=b[j++];a[i]='\0';printf("the new string is %s\n",a);}
绛旓細) break; } n=0; while ( *s2 ) { s2++; n++; if ( n>=m ) break; } while ( *s2 ) { *s1=*s2; s1++; s2++; } s1=0;} void main() { char s1[256],s2[256]; int m;gets(s1); gets(s2); scanf("%d",&m); f(s1,s2,m-1); printf("%s\n",s1);} ...
绛旓細鎬濊矾锛涓や釜瀛楃涓鐨勬嫾鎺ュ彲浠ヤ娇鐢╯trcat鍑芥暟銆俿trcat鍑芥暟鍘熷瀷锛 char *strcat(char *s1,char *s2);闇瑕佸紩鍏ュご鏂囦欢锛#include <string.h> 鍔熻兘锛氭妸s2鎵鎸囧瓧绗︿覆娣诲姞鍒皊1缁撳熬澶勫苟娣诲姞'\0'銆傛敞鎰忥細s1蹇呴』鏈夎冻澶熺殑绌洪棿鏉ュ绾硈1鍜宻2鐨勫瓧绗︿覆銆傚弬鑰冧唬鐮侊細include "stdio.h" #include "string.h" int ...
绛旓細include <stdio.h> int strcmp(char *s1, char *s2){ while((*s1++ == *s2++)&& *s1);return (*s1 - *s2);} void main(){ char a[10], b[10];gets(a);gets(b);printf("%d\n", strcmp(a, b));}
绛旓細1)绠鍗曟潵锛岀洿鎺ョ敤 strcat 鍑芥暟锛闇瑕佸寘鍚ご鏂囦欢 string.h 2)鑷繁瀹炵幇鐨勮瘽涔熶笉楹荤儲锛屼絾鏄鑰冭檻涓浜涚粏鑺傦細鍋囪涓や釜瀛楃涓鎸囬拡涓 str1锛宻tr2 锛岀幇鍦ㄨ璁 str1 鍜 str2 杩炴帴鎴涓涓鏂扮殑瀛楃涓层俛.鑰冭檻鎸囬拡 str1,str2 鏄惁闈炵┖ b.濡傛灉灏唖tr2鐨勫唴瀹圭洿鎺ヨ繛鎺ュ埌str1鐨勬湯灏撅紝瑕佽冭檻str1鏄惁鏈夎冻澶熺殑...
绛旓細绋嬪簭浠g爜濡備笅锛歕x0d\x0a#include //缂栬瘧棰勫鐞嗗懡浠x0d\x0aint main(int argc, char *argv[]) //涓鍑芥暟锛屽瓧绗鐨勫0鏄嶾x0d\x0a{\x0d\x0achar a,b; //瀹氫箟瀛楃a锛宐\x0d\x0a\x0d\x0ascanf("%c %c",&a,&b); //杈撳叆瀛楃a锛宐\x0d\x0a\x0d\x0aprintf("...
绛旓細杩欐牱灏卞彲浠ヤ簡锛屾垜宸茬粡鍦╲c6閫氳繃璋冭瘯杩愯浜嗭紝涓嶈繃瑕佹敞鎰忎竴鐐瑰摝锛岃櫧鐒c璇█閲岄潰娌℃湁string绫诲瀷鐨勫彉閲忥紝浣嗘槸鍦╟++閲岄潰鏈夛紝鎵浠ヤ负浜嗛槻姝笉蹇呰鐨勯夯鐑︼紝浣犺繖閲岀殑鍙橀噺鍚嶅瓧鏈濂戒笉瑕佺敤string include<stdio.h> void stringcat(char str1[],char str2[],char str[]){ int i,j;for(i=0;str1[i]!='\0...