问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

急求C语言的代码

发布网友 发布时间:2022-05-04 15:49

我来回答

2个回答

热心网友 时间:2022-06-23 21:00

#include <stdio.h>
#include <string.h>

/*定义一个函数,用指向字符串的指针匹配子字符串*/
int match(char * str, char * str1, char * str2, char * a_str);

int main()
{

/*定义两个字符数组,分别存储主字符串和子字符串*/
char mother[256],child[256];
/*定义一个字符串,用于替换子字符串*/
char change[256];
/*定义一个字符串,保存替换后的字符串*/
char af_change[256]="";
/*定义一个整型值,记录匹配结果*/
int result;

printf("匹配字符串:\n");
printf("请输入主字符串:\n");
gets(mother);
printf("请输入子字符串:\n");
gets(child);
printf("请输入替换的字符串:\n");
gets(change);
result=match(mother,child,change,af_change);
if (result==1)
{

printf("匹配和替换均成功!\n");
printf("替换后的字符串是:%s\n",af_change);

}
else if (result==0)

printf("匹配成功但替换失败!\n");

else

printf("匹配失败!\n");

return 0;

}

/*定义一个函数,用指向字符串的指针匹配子字符串*/
int match(char * str, char * str1, char * str2, char * a_str)
{

/*定义两个整型变量表示字符串的长度*/
int l1,l2;
/*定义指向字符串的指针,其中q1指向子字符串在主串中的位置,q2指向子字符串的位置*/
char * p, * q1=NULL,* q2,* t;
/*定义一个指向替换后的字符串指针*/
char *cc;
char *change[256];/*保存匹配成功时,子串在母串中的位置*/
int i,j; /*循环控制变量*/

/*对子串在母串中的位置进行初始化*/
for (i=0; i<256; i++) change[i]=NULL;

/*求出字符串的长度*/
l1=strlen(str1);
l2=strlen(str2);

/*对指针进行赋值*/
p=str;

/*字符串匹配过程*/
i=0;
for (p; *p!='\0'; p++)
{

q1=p;
q2=str1;
while ((*q2!='\0')&&(*q2==*q1))
{

q1++;
q2++;

}
if (*q2=='\0')/*匹配成功*/
{

change[i]=q1-l1;
i++;

}

}
if (i==0) /*匹配失败*/

return -1;

/*匹配成功后进行字符串替换过程*/
if (l1!=l2) /*替换后的字符串与原子字符串长度不等,无法替换*/
return 0;
cc=a_str;
p=str;
for (j=0; j<i; j++)/*对匹配的多个子串进行替换*/
{

while (p<change[j])/*复制母串中匹配前的字符*/
{

*a_str=*p;
a_str++;
p++;

}
for (t=str2; *t!='\0'; a_str++,t++) /*替换子字符串*/

*a_str=*t;

p+=l1;

}
if (*p!='\0') /*全部匹配字符串都替换完了,但母串未结束*/
while (*p!='\0')
{

*a_str=*p;
a_str++;
p++;

}
*a_str='\0';
a_str=cc;
return 1;

}
你的串号我已经记下,采纳后我会帮你制作

热心网友 时间:2022-06-23 21:00

/* 用冒泡排序法对十个数升序排序 */
#include <stdio.h>
#include <stdlib.h>

int main()
{
int i,j,t,a[10];
printf("Please input 10 integers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++) /* 冒泡法排序 */
for(j=0;j<10-i-1;j++)
if(a[j]>a[j+1])
{t=a[j];/* 交换a[i]和a[j] */
a[j]=a[j+1];
a[j+1]=t;
}
printf("The sequence after sort is:\n");
for(i=0;i<10;i++)
printf("%-5d",a[i]);
printf("\n");
system("pause");
return 0;
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
amd锐龙r75700g超频性价比装机方案,要核显性能综合表现超 架空电线故障如何排除 ...unexpected T_CONSTANT_ENCAPSED_STRING in 怎么解决这个错啊_百度... php错误Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_S... PHP出现如下情况 syntax error, unexpected T_ENCAPSED_AND_WHITES... php 如何捕获类似于Parse error: syntax error, unexpected T_CONSTA... 挂烫机如何熨西装 戗驳领西装怎么熨烫 西装前片怎么推拉拔烫 西装能不能拿去烫 C语言如何输出这种效果,求代码 我淘宝网里面的购物车怎么进不去? 收集神奇的或功能强悍的而且短小的c语言代码 我为何不能从电脑端登录淘宝网购物车? 浏览器不能正常登录淘宝,不能进购物车。淘宝主页浏览正常 淘宝进入不了“我的淘宝”和“购物车”,什么原因? 我的微信被封,解封发信息总收不到验证码怎么回事? 微信自助解封一直显示未收到验证码 微信被封类型可解封自助解封发了多个号码但是都没有收到验证码? 我的微信被封自助解封是老是提示收不到短信验证码怎么回事 微信解封一直提示没有收到验证码怎么办? 解封显示没有收到验证码怎么解决? 解封显示没有收到验证码怎么解决? 我的微信被封,解封中收不到短信验证码个心么办? 被封,解封收不到验证码怎么回事 码被封,解封过程显示收不到验证码? 微信被封,按指导解封发送短信后,系统仍然显示没有收到验证码!!! 手机被封,解封时收不到短信验证码怎么办?求助 打印机出现问题,电脑提示“0x370671ca&quot;指令引用的内存“0x370671ca&quot;内存。该内存不能为“read&quot; 华为怎么设置扫脸开锁 硬盘损坏了,出现过蓝屏0x000000ed这个错误代码 各位大神,请问怎么获取下拉框的选中项的文本值 怎么马上获取下拉框被选中的项的内容 java中怎么获得下拉框选中的值 jquery怎么获取下拉框所有的值 求形容苦中作乐的句子或短语。 关于苦中作乐的幽默句子 表示苦中作乐的名言名句有哪些? 苦中作乐的句子 为名忙为利忙忙里偷闲喝杯茶去, 劳心苦劳力苦苦中作乐拿壶酒来。 求横批 禅茶人生唯美句子有哪些? 是苦也是乐800字作文语句优美 电脑开机出现reboot and select proper……a key是怎么回事啊,怎么修复啊 电脑开机一直是什么press a key,怎么办? 电脑开机时出现些英文,最后是Press a key ,应该怎么做? yo网线是千兆网线吗 如何做设计图子 怎样制作设计图 手机可以注册淘宝网吗? 在手机上可以注册淘宝吗?怎么注册?