| 查看: 574 | 回复: 2 | |||
[交流]
【求助】一个C语言
|
|
replace_word函数的功能是对s指向的数组所存储的一个英文句子中的每个单词做如下处理:在word_tab中查找该单词,若未找到则保持原单词不变;若找到则用word_tab数组中该单词后面的第一个单词替换句子中的原单词(如果该单词是word_tab数组中的最后一个单词则用第一个单词替换)。 [ Last edited by zyj8119 on 2010-12-17 at 23:18 ] |
» 猜你喜欢
极限拉扯,如何抉择
已经有8人回复
入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍
已经有6人回复
OpenAI又攻克数学难题了,离AI做有机合成还有多远?
已经有8人回复
课题组会帮你通过考核么?
已经有6人回复
售一区SCI文章T0P,我:8O.551.O54,科目全,可十急
已经有9人回复
售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急
已经有8人回复
售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急
已经有10人回复
售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急
已经有9人回复
售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急
已经有7人回复
售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急
已经有10人回复
» 本主题相关价值贴推荐,对您同样有帮助:
c语言高手请进
已经有35人回复
c语言
已经有11人回复
c语言求助,一个小程序详细讲解
已经有13人回复
一个区间搜索的c语言程序 出问题了
已经有8人回复
关于c语言的一个小问题 坐等回复啊 急啊 是关于建立数组的
已经有9人回复
诚求一个小C语言的程序,十万火急,谢谢大家
已经有8人回复
【求助】帮我编个程啊~C语言,C++,Matlab,VB...都行~
已经有14人回复
» 抢金币啦!回帖就可以得到:
2026年人文教育与社会发展国际会议(HESD 2026)
+1/854
诚征女友
+1/494
深圳|91年IT研发,期待一份不必伪装的长久陪伴。
+5/380
中国农大 课题组招收2027年9月入学的考核制博士生
+5/110
上海交通大学招聘塑料催化裂解/甲醇重整制氢等方向博士后
+1/84
沈阳工业大学 环境电化学技术研究团队 招收硕士研究生(学硕/专硕)
+2/72
中国科大-合肥国家实验室冷原子量子网络团队招聘启事
+2/66
[Mathematics] 特刊征稿
+1/40
[Complex & Intelligent Systems] 专刊征稿
+1/39
爱丁顿实验
+1/33
湖南大学-分析检测技术和生物柔性传感器-招收1名博士研究生 (2027年)
+1/29
高分辨质谱测试丨科研单位对外服务
+1/19
深圳大学金融科技学院王云奇团队博士后招聘
+1/4
委托检验的安全锁:质量保证协议,你签了吗?
+1/3
生物发酵罐气体智能管控,层流质量流量控制器如何赋能?
+1/3
仪器验证全生命周期管理:检测数据精准与否的前提
+1/2
ICoEP(教育与心理学国际会议)
+1/2
蛋白翻译后修饰:解码细胞功能调控的分子密码
+1/2
ICoAAD(建筑、艺术与设计)
+1/2
单细胞VDJ测序:从B细胞库中精准挖掘抗体药优势克隆
+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










回复此楼