中国石油大学第八章计算机作业.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中国石油大学第八章计算机作业

中国石油大学第八章计算机作业 8.1 字符转换 描述 提取一个字符串中的所有数字字符(‘0’...‘9’)将其转换为一个整数输出。 输入 一个以回车符为结束标志的字符串(少于80个字符)。 输出 把字符串中的所有数字字符(‘0’...‘9’)转换为一个整数并输出。 #includestdio.h int main() { char str[80]; int i,m=0; gets(str); for(i=0; str[i]!=\0; i++) { if(str[i]=9str[i]=0) { m=m*10+(str[i]-48); } } printf(%d\n,m); } 8.2 合并字符串 输入两个已经按从小到大顺序排列好的字符串,编写一个合并两个字符串的函数,使合并后的字符串,仍然是从小到 大排列。 输入: 两个已经排好顺序(升序)的字符串 输出: 一个合并在一起的有序(升序)的字符串 #include stdio.h #include stdlib.h #include string.h int main() { char a[100],b[100],t; int k,i,j; gets(a); gets(b); strcat(a,b); k=strlen(a); for(j=1;j=k;j++) for(i=0;ik-j;i++) if(a[i]=a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } puts(a); return 0; } 8.3 删除重复字符 背景: 输入一个长度不超过 100 的字符串,删除串中的重复字符。 输入: 输入要检查的字符串,长度不超过100个字符。例如:abacaeedabcdcd。 输出: 删除重复字符后的字符串。例如:abced。 #include stdio.h int main() { char a[100],b[100]; int n,i,j,cnt=1; gets(a); n=strlen(a); b[0]=a[0]; for(i=1;in;i++) { for(j=0;ji;j++) { if(a[i]==a[j]) break; } if(a[i]==a[j]i==j) { b[cnt]=a[i]; cnt++; } } for(i=0;icnt;i++) printf(%c,b[i]); printf(\n); return 0; } 8.4 删除字符串中指定字符 输入两个字符串 s1 和 s2 ,在 s1 中删除任何 s2 中有的字符。例如, s1 :“ abc123ad ”, s2 :“ a1 ” ,则输出“bc23d ”。 输入: 两个字符串 s1 和 s2 输出: 删除后的字符串 s1 要求: 设计一个效率尽量高的算法,对每个字符串只扫描一遍就可以了。 如果采用先进行串连接,然后再进行排序的算法,则效率太低了 #include stdio.h int main() { char a[100],b[100],c[100]; int m,n,i,j,k=0,p,q; gets(a); gets(b); n=strlen(a); m=strlen(b); for(i=0;in;i++) { for(j=0;jm;j++) { if(b[j]==a[i]) break; } for(p=0;pk;p++) if(c[p]==a[i]) break; if(j==mp==k) { c[k]=a[i]; k++; } } for(i=0;ik;i++) printf(%c,c[i]); printf(\n); return 0;

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档