用c语言编写程序,输入任意一串字符,再输入一个字符和一个位置,将此字符插入到此串字符的这个位置上。

如题所述

#include <stdio.h>#include <string.h>void main(){ char ch[100]; char c; int index; memset(ch,NULL,100);//初始化所有元素为空 puts("请输入一串字符:\n"); gets(ch); puts("请输入一个字符:"); scanf("%c",&c); puts("请输入要插入的位置:"); scanf("%d",&index); if(index>strlen(ch)+1||index<1) puts("输入的位置不正确!\n"); else { printf("插入元素%c之前:%s\n插入元素%c之后:\n",c,ch,c); for(int i=strlen(ch);i>index-1;i--) { ch[i]=ch[i-1]; } ch[index-1]=c; printf("%s\n",ch); }}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-27
#include<stdio.h>
#include<string.h>
void main()
{
char ch[40],ch2[20],ch3[20],i,j,temp,x;
printf("请输入第一串字符:");
gets(ch);
printf("请输入第二串字符:");
gets(ch2);
printf("请输入插入的位置:");
scanf("%d",&i);
temp = i;
for(j=0;ch[temp] != '\0';j++,temp++)
ch3[j] = ch[temp];
ch3[j]='\0';
for(j=0;j<strlen(ch);j++,i++)
ch[i] = ch2[j];
strcat(ch,ch3);
ch[i] = '\0';
puts(ch);
}本回答被网友采纳
第2个回答  2013-11-27
#include<stdio.h>
#include "string.h"
void main()
{
int i,j;
char ch,s[100];
printf("输入一字符串:");
gets(s);
printf("输入一个字符:");
scanf("%c",&ch);
printf("输入位置:");
scanf("%d",&i);
if(i>strlen(s))
{
printf("位置过大\n");
return;
}
for(j=strlen(s)+1;j>i;j--)
s[j]=s[j-1];
s[i]=ch;
puts(s);}本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网