当前位置:首页 » 编程语言 » 串的插入c语言

串的插入c语言

发布时间: 2023-09-10 19:50:23

c语言在指定位置插入字符串

如下


代码
#include
int main (void)
{
char s1[80],s2[80],k,*p1,*p2,*pnew,*s3;
int n1,n2;n1=n2=0;
gets(s1);gets(s2);scanf("%c",&k);
p1=s1;p2=s2;
while(*p1)
{ n1++;p1++; }
while(*p2)
{ n2++;p2++;}
pnew=(char *)malloc(sizeof(char)*(n1+n2+1));
if(pnew==NULL)
{printf("分配内存失败! ");exit(0);}
p1=s1;p2=s2;s3=pnew;
while(*p1)
{
if(*p1!=k)
{*pnew=*p1;p1++; pnew++;}
else if(*p2)
{*pnew=*p2;p2++;pnew++;}
else
{*pnew=*p1;p1++;pnew++;}
}
*pnew=''

puts(s3);
free(s3);
return 0;
}

⑵ 用C语言编写一个在字符串中插入一个字符的程序

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

#defineN100

voidInsert(char*s);

intmain()

{

charstr[N];

printf("Inputastring:");

gets(str);

Insert(str);

printf("Insertresults:%s ",str);

return0;

}

voidInsert(char*s)

{

charstr[N];

char*t=str;

strcpy(t,s);

for(;*t!='';s++,t++)

{

*s=*t;

s++;

*s='';

}

*s='';/*在字符串s的末尾添加字符串结束标志*/

}

(2)串的插入c语言扩展阅读

C语言通过定义一个char类型的二维数组实现,通过二维数组的行索引可得到数组中的每个字符串,列的大小限定了每个字符串所能包含的最大字符个数,所以采用这种定义方式时,列的大小必须不能小于数组所有字符串的最大长度。

C语言编程定义一个字符串的数组:

str={

“IloveC.”,

“IloveC++.”,

“IloveJAVA.”,

“IlovePython.”,

“IloveLabVIEW.”

}

⑶ 将一个字符串插入到另一个字符串的指定位置的题目(用C语言解决)

1、参数2去掉与参数1相同的字符串。

⑷ 用C语言怎么写个 字符串插入函数

程序的大体思路可以是这样:
str1是原字符串,str2是待插入的字符串,position是待插入的位置,我们可以这样,用一个指针p_cur指向字符串1 str1中的待插入位置position,另一个指针p_end指向字符串1 str1的尾部,每次插入字符前,把str1中从当前位置开始一直到结束字符全部后移一个位置,空出当前位置,然后把要插入的字符放进这个位置,这样就完成了一个字符的插入,重复这个步骤,直到str2被完全插入。
代码如下:
#include <stdio.h>
#include <string.h>
void insert_str(char str1[],char str2[],int position)
{
/*
insert_str()函数
功能:将字符串str2插入到str1的position位置处
参数:char str1,char str2 ,int position
返回值:无
*/
int i;
char *p_end,*p_cur,*p;/*p_end指向第一个字符串的尾部,p_cur指向被插入的位置*/
p_end=str1+strlen(str1)-1;
p_cur=str1+position-1;
for(i=0;str2[i]!='\0';i++)
{
for(p=p_end;p>=p_cur;p--)
{
*(p+1)=*p;/*从p_cur到p_end的全部元素后移一个位置,此时p_cur指向的位置就空出来了*/
}
*p_cur=str2[i];/*把字符串2中的字符插入空出来的位置*/
p_cur++;/*p_cur下移一个位置*/
p_end++;/*多了一个字符,因此p_end也下移一个位置*/
}
}

void main()
{
char s1[100],s2[20];
int position;
printf("输入字符串1:\n");
gets(s1);
printf("输入插入位置:");
do
{
scanf("%d",&position);
while(getchar()!='\n');/*这一句可以把输入position的时候输入的回车去掉*/
}while(position<0||position>strlen(s1));
printf("输入字符串2:\n");
gets(s2);
insert_str(s1,s2,position);
printf("字符串被插入后变成:\n");
puts(s1);
}

⑸ c语言程序编制一个将一个字符串插入到另一个字符串的指定位置的函数。

intmain()
{
chara[100],b[100],*x,*y;
inti;
printf("输入字符串1:");
scanf("%s",a);
printf("输入字符串2:");
scanf("%s",b);
printf("将字符串1插入到字符串2的第几个字符后:");
scanf("%d",&i);
x=a;
y=b+i;
while((*y++=*x++)!='');
printf("%s",b);
return0;
}

热点内容
滑板鞋脚本视频 发布:2025-02-02 09:48:54 浏览:432
群晖怎么玩安卓模拟器 发布:2025-02-02 09:45:23 浏览:557
三星安卓12彩蛋怎么玩 发布:2025-02-02 09:44:39 浏览:743
电脑显示连接服务器错误 发布:2025-02-02 09:24:10 浏览:537
瑞芯微开发板编译 发布:2025-02-02 09:22:54 浏览:146
linux虚拟机用gcc编译时显示错误 发布:2025-02-02 09:14:01 浏览:235
java驼峰 发布:2025-02-02 09:13:26 浏览:651
魔兽脚本怎么用 发布:2025-02-02 09:10:28 浏览:538
linuxadobe 发布:2025-02-02 09:09:43 浏览:212
sql2000数据库连接 发布:2025-02-02 09:09:43 浏览:726