1 #include <stdio.h> 2 3 int main(){ 4 char str1[20]="Hello "; 5 char str2[20]="World!"; 6 char str3[20]; 7 puts(strcat(str1,str2)); 8 return 0; 9 } 用字符串連接函數處理兩個字符串的合並
1 #include <stdio.h> 2 3 /* 4 注:不允許使用字符串連接函數 5 編一個程序,輸入3個字符串(長度均不超過20)存入一個二維的字符型數組中, 6 將第3個字符串連接到第二個字符串之後,組成新的字符串存入以為的字符型數組中, 7 然後輸出該新的字符串 8 */ 9 10 int main(){ 11 char dest[61],str[3][21]; 12 int i,j,k; 13 scanf("%s%s%s",str[0],str[1],str[2]); 14 k=0; 15 for(i=0;i<3;i++){ 16 for(j=0;j<20;j++){ 17 if(str[i][j]=='\0') 18 break; 19 else{ 20 dest[k]=str[i][j]; 21 k++; 22 } 23 } 24 } 25 dest[k]='\0'; 26 printf("%s",dest); 27 return 0; 28 } 用數組循環處理兩個字符串的合並
1 #include <stdio.h> 2 3 int main(){ 4 char str1[80],str2[30],*ptr1=str1,*ptr2=str2; 5 printf("input str1:"); 6 gets(str1); 7 printf("input str2:"); 8 gets(str2); 9 printf("str1----------str2\n"); 10 printf("%s.......%s\n",ptr1,ptr2); 11 while(*ptr1)ptr1++;/* 移動指針到串尾 */ 12 while(*ptr2)*ptr1++=*ptr2++;/* 連接串 */ 13 *ptr1='\0';/* 寫入串的結束標志 */ 14 ptr1=str1;ptr2=str2; 15 printf("str1----------str2\n"); 16 printf("%s.......%s\n",ptr1,ptr2); 17 return 0; 18 } 用指向字符串的指針變量處理兩個字符串的合並