----------------解决方案--------------------------------------------------------
# include <string.h>
然后调用strcat(); 具体请查看系统帮助!
----------------解决方案--------------------------------------------------------
能把系统帮助的连接写下吗 我去看看 谢谢你了 :)
----------------解决方案--------------------------------------------------------
在TC 2.0下打出以下代码!
# include <string.h>
strcat();
然后将光标移到strcat下,按Ctrl+F1
----------------解决方案--------------------------------------------------------
谢谢斑主啊 我去看看 第一次来 很多专用名词我还是不会啊 我去摸摸
----------------解决方案--------------------------------------------------------
//编写函数Str_cat(),其功能是将字符串str2连接到字符串str1的第k个字符后面 //在主函数中输入str1,str2和k的值,调入函数Str_cat后,输出str1. #include <stdio.h> #include <stdlib.h> #include <string.h>
#define MAXCHARACTER 100
static char str1[MAXCHARACTER]; static char str2[MAXCHARACTER];
void Str_cat(int);
void Str_cat(int k) { int str_1_length; int str_2_length; char *before_str; char *after_str; str_1_length=strlen(str1); str_2_length=strlen(str2); before_str=(char *)malloc((str_1_length+str_2_length+1)*sizeof(char)); if(!before_str) exit(1); for(int j=0;j<k;j++) before_str[j]=str1[j]; before_str[j]='\0'; after_str=(char *)malloc((str_1_length-k+1)*sizeof(char)); for(int i=k;i<str_1_length;i++) after_str[i-k]=str1[i]; after_str[i-k]='\0'; strcat(before_str,str2); strcat(before_str,after_str); printf("The string afer Str_cat is:\n"); puts(before_str); free(before_str); free(after_str); }
void main() { int k; printf("please enter the first string:\n"); gets(str1); fflush(stdin); printf("please enter the second string:\n"); gets(str2); fflush(stdin); do{ printf("pleas enter the positon(1~%d):\n",strlen(str1)); scanf("%d",&k); fflush(stdin); }while(k>strlen(str1)||k<1); Str_cat(k); } //你先看看 把 //不懂的话,再聊把
----------------解决方案--------------------------------------------------------
#include<stido.h>
#include<stdlib.h>
#define N 100
#define M 80
void str_cat(int k,char *str1,char *str2)
{
char *ptr;
register int i,j;
ptr=(char *)malloc((M+N)*sizeof(char));
for(i=0;i<k:i++) ptr[i]=str1[i];
for(i=0;str2[i]!='\0';i++) ptr[i+k]=str2[i];
for(i=k+i-1,j=0;str1[1]!='\0';j++,i++) ptr[i]=str1[k+j];
ptr[i]='\0';
printf("%s\n",ptr);
}
void main()
{
register int i,j;
int k;
char str1[N],str2[M];
printf("enter k:");
scanf("%d",k);
printf("enter str1");
scanf("%s",str1);
printf("enter str2");
scanf("%s",str2);
str_cat(k,str1,str2);
}
----------------解决方案--------------------------------------------------------
谢谢啊 我去研究下 不懂的再来问
----------------解决方案--------------------------------------------------------