欢迎来到天天文库
浏览记录
ID:5775362
大小:41.00 KB
页数:17页
时间:2017-12-24
《中国石油大学第八章计算机作业》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、中国石油大学第八章计算机作业8.1字符转换描述提取一个字符串中的所有数字字符(‘0’...‘9’)将其转换为一个整数输出。输入一个以回车符为结束标志的字符串(少于80个字符)。输出把字符串中的所有数字字符(‘0’...‘9’)转换为一个整数并输出。#includeintmain(){charstr[80];inti,m=0;gets(str);for(i=0;str[i]!=' ';i++){if(str[i]<='9'&&str[i]>='0'){m=m*10+(str[i]-48);}}pr
2、intf("%d",m);}8.2合并字符串输入两个已经按从小到大顺序排列好的字符串,编写一个合并两个字符串的函数,使合并后的字符串,仍然是从小到大排列。输入:两个已经排好顺序(升序)的字符串输出:一个合并在一起的有序(升序)的字符串#include#include#includeintmain(){chara[100],b[100],t;intk,i,j;gets(a);gets(b);strcat(a,b);k=strlen(a);for(j=1;j
3、<=k;j++)for(i=0;i=a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}puts(a);return0;}8.3删除重复字符背景:输入一个长度不超过100的字符串,删除串中的重复字符。输入:输入要检查的字符串,长度不超过100个字符。例如:abacaeedabcdcd。输出:删除重复字符后的字符串。例如:abced。#includeintmain(){chara[100],b[100];intn,i,j,cnt=1;gets(
4、a);n=strlen(a);b[0]=a[0];for(i=1;i5、两个字符串s1和s2输出:删除后的字符串s1要求:设计一个效率尽量高的算法,对每个字符串只扫描一遍就可以了。如果采用先进行串连接,然后再进行排序的算法,则效率太低了#includeintmain(){chara[100],b[100],c[100];intm,n,i,j,k=0,p,q;gets(a);gets(b);n=strlen(a);m=strlen(b);for(i=0;i6、p++)if(c[p]==a[i])break;if(j==m&&p==k){c[k]=a[i];k++;}}for(i=0;i#includeintmain(){inti,m=07、,p;chara[10][20];for(i=0;p!=0;i++){scanf("%s",a[i]);p=strcmp(a[i],"stop");}for(i=0;a[i]!=' ';i++){p=strcmp(a[i],"stop");if(p==0)break;elsem++;}printf("%d",m);}8.6在指定位置插入字符串输入两个字符串s1、s2和s1中任意字符k,在s1中的指定字符k第一次出现的位置处插入字符串s2并输出。输入:两个字符串s1、s2和s1中任意字符k输出:插入后的字符串s8、1#includevoidmain(){charn,a[200],b[200];inti,h;gets(a);gets(b);scanf("%c",&n);for(i=0;a[i]!=0;i++){if(a[i]==n){for(h=0;b[h]!=0;h++){printf("%c",b[h]);}}printf("%c",a[i]);}
5、两个字符串s1和s2输出:删除后的字符串s1要求:设计一个效率尽量高的算法,对每个字符串只扫描一遍就可以了。如果采用先进行串连接,然后再进行排序的算法,则效率太低了#includeintmain(){chara[100],b[100],c[100];intm,n,i,j,k=0,p,q;gets(a);gets(b);n=strlen(a);m=strlen(b);for(i=0;i6、p++)if(c[p]==a[i])break;if(j==m&&p==k){c[k]=a[i];k++;}}for(i=0;i#includeintmain(){inti,m=07、,p;chara[10][20];for(i=0;p!=0;i++){scanf("%s",a[i]);p=strcmp(a[i],"stop");}for(i=0;a[i]!=' ';i++){p=strcmp(a[i],"stop");if(p==0)break;elsem++;}printf("%d",m);}8.6在指定位置插入字符串输入两个字符串s1、s2和s1中任意字符k,在s1中的指定字符k第一次出现的位置处插入字符串s2并输出。输入:两个字符串s1、s2和s1中任意字符k输出:插入后的字符串s8、1#includevoidmain(){charn,a[200],b[200];inti,h;gets(a);gets(b);scanf("%c",&n);for(i=0;a[i]!=0;i++){if(a[i]==n){for(h=0;b[h]!=0;h++){printf("%c",b[h]);}}printf("%c",a[i]);}
6、p++)if(c[p]==a[i])break;if(j==m&&p==k){c[k]=a[i];k++;}}for(i=0;i#includeintmain(){inti,m=0
7、,p;chara[10][20];for(i=0;p!=0;i++){scanf("%s",a[i]);p=strcmp(a[i],"stop");}for(i=0;a[i]!=' ';i++){p=strcmp(a[i],"stop");if(p==0)break;elsem++;}printf("%d",m);}8.6在指定位置插入字符串输入两个字符串s1、s2和s1中任意字符k,在s1中的指定字符k第一次出现的位置处插入字符串s2并输出。输入:两个字符串s1、s2和s1中任意字符k输出:插入后的字符串s
8、1#includevoidmain(){charn,a[200],b[200];inti,h;gets(a);gets(b);scanf("%c",&n);for(i=0;a[i]!=0;i++){if(a[i]==n){for(h=0;b[h]!=0;h++){printf("%c",b[h]);}}printf("%c",a[i]);}
此文档下载收益归作者所有