| 查看: 541 | 回复: 2 | |||
[交流]
【求助】一个C语言
|
|
replace_word函数的功能是对s指向的数组所存储的一个英文句子中的每个单词做如下处理:在word_tab中查找该单词,若未找到则保持原单词不变;若找到则用word_tab数组中该单词后面的第一个单词替换句子中的原单词(如果该单词是word_tab数组中的最后一个单词则用第一个单词替换)。 [ Last edited by zyj8119 on 2010-12-17 at 23:18 ] |
» 猜你喜欢
filecode,4个jtjc了
已经有11人回复
欢迎发来filecode的Mz6后的代码验证其规律
已经有117人回复
filecode=后面第一个是大写字母
已经有12人回复
为什么余额宝的年化利率越来越低?主要原因有哪些?
已经有4人回复
今天放榜吗?
已经有13人回复
今天基金会出结果吗?20260819
已经有8人回复
2027广东省杰青
已经有10人回复
朋友圈看到的
已经有8人回复
时间戳变了,能看出什么问题?
已经有14人回复
咱们一起用铁证分析2026国家社科基金中标与否
已经有30人回复
» 本主题相关价值贴推荐,对您同样有帮助:
c语言高手请进
已经有35人回复
c语言
已经有11人回复
c语言求助,一个小程序详细讲解
已经有13人回复
一个区间搜索的c语言程序 出问题了
已经有8人回复
关于c语言的一个小问题 坐等回复啊 急啊 是关于建立数组的
已经有9人回复
诚求一个小C语言的程序,十万火急,谢谢大家
已经有8人回复
【求助】帮我编个程啊~C语言,C++,Matlab,VB...都行~
已经有14人回复
» 抢金币啦!回帖就可以得到:
散金祈福
+3/1143
每年这时候我都再仔细读一遍《范进中举》
+1/572
散金求好运
+1/273
一点琐碎的家务事,却非常困扰我,让我内耗
+2/104
山东征女友,坐标济南
+1/91
上海交通大学张航课题组招聘博士后(电化学储能)
+1/45
武汉,诚征男友,不异地,年龄大了
+1/39
5年了,散金祈愿面上得中,愿望成真再散十倍
+1/26
偶然点开小木虫,发现十年已经过去了
+1/14
2027环境工程博士申请
+1/9
老虫友
+1/7
中国科学院生态环境研究中心环境工程相关方向招收保送硕士和联合培养博士和硕士研究生
+1/4
27推免-广州医科大学封红亮教授招收精神医学应用心理学推免生
+1/3
北京理工大学-集成电路与电子学院杰青团队-招博士后
+1/3
中国科学院生物物理研究所田勇课题组招聘联合培养生
+1/2
清华大学环境课题组招聘环境工作专业客座生研究生2-3名(应用导向)
+1/2
河海大学海洋环境污染与生态毒理学研究组招收2027级硕士生 及博士研究生
+1/2
北理工集成电路杰青团队 | 诚招科助理
+1/2
南京工业大学段金贵团队:分子纳米线组装策略,攻克高温下C2H2/CO2分离难题
+1/1
【产品测评分享】体外转录产量不理想、dsRNA 副产物高?T7 RNA 聚合酶实测体验
+1/1
★ ★
zyj8119(金币+20):谢谢高手,每次都是你帮忙,其实我程序很一般,谢谢!!!! 2010-12-18 15:57:28
余泽成(金币+2):谢谢参与应助! 2010-12-18 18:28:49
zyj8119(金币+20):谢谢高手,每次都是你帮忙,其实我程序很一般,谢谢!!!! 2010-12-18 15:57:28
余泽成(金币+2):谢谢参与应助! 2010-12-18 18:28:49
|
#include #include #include void replace_word(char s[]) { char word_tab[4][10]={"sad","happy","accuse","forgive"}; char t[10],tmp[80];//t[10]是假定s中的每个英文单词长度不超过9个。 int i,j,k,n; for (i=0;s;i++) { for (j=i,k=0;isalpha(s[j]);k++,j++)//这个循环用于取出s中的一个单词 t[k]=s[j]; t[k]=0; if (k>0)//如果取出了一个单词 { //判断该单词是否在word_tab中出现 for (n=0;n<4;n++) if (strcmp(t,word_tab[n])==0) break; if (n<4)//如果出现了 { strcpy(tmp,s+i+strlen(t));//将S中原单词之后的部分复制到tmp中暂存 strcpy(s+i,word_tab[(n+1)%4]);//用word_tab中的后面的单词替换掉S中的原单词 //s+i+strlen(t)不会替换原单词。 strcat(s,tmp);//将暂存在tmp中的部分连接在s之后。strcat是连接,strcpy是复制,作用不同。 i=i+strlen(word_tab[(n+1)%4]);//更新字符串长度 } else i=i+strlen(t); } } } main() { char line[80]="I accuse your mistakes."; replace_word(line); puts(line);//puts输出字符串,而putchar只能输出一个字符 } |
2楼2010-12-18 15:48:01
3楼2010-12-18 17:46:37










回复此楼