从键盘输入一个字符串s,将s字符串中所有和前面重复多余的字符删除,其余字符保留。输出处理后的字符串 C语言:任意输入一个字符串s,将s中所有的字符串ip删除.....
如字符串“abccdeefggh”去除相邻连续的重复字复字符为“abcdefgh”。
最佳答案 public class Test3 {
public static void main(String[] args) {
String source = "abccdeefggh";
System.out.println("去除相邻连续的重复字符前:" + source);
source = func(source);
System.out.println("去除相邻连续的重复字符后:" + source);
}
public static String func(String source){
StringBuffer temp = new StringBuffer(source.substring(0,1));
int len = source.length();
int k = 0;
for(int i=1; i<len; i++){
if(source.substring(i,i+1).equals(temp.substring(k, k+1))){
continue;
}
temp.append(source.substring(i,i+1));
k++;
}
return temp.toString();
}
}
这个是java的,C#改下就可以了,剩下的交给你自己了,相信你没问题,代码已测试过
1. 编写程序:从键盘输入一个字符串s,将s字符串中所有和前面重复多余的字符删除,其余字符保留。输出处理~
循环…一个外循环for(i=0;i<?;i++).内循环把i换成j,如果a[0]=a[j],把后面的数都往前提一位…完了再比a[1]和后面的比…类推…
#include
#include
#include
char str[10] = "111222333";
// 字符串替换(源字符串, 旧字符串, 新字符串)
char *strReplace(char *src, const char *oldstr, const char *newstr, int len)
{
char *needle;
char *tmp;
if (strlen(oldstr) == strlen(newstr) && strcmp(oldstr, newstr) == 0)
{
return 0;
}
while ((needle = strstr(src, oldstr)) && (needle - src <= len))
{
tmp = (char*)malloc(strlen(src) + (strlen(newstr) - strlen(oldstr)) +1);
strncpy(tmp, src, needle-src);
tmp[needle-src] = '\0';
strcat(tmp, newstr);
strcat(tmp, needle+strlen(oldstr));
src = strdup(tmp);
free(tmp);
}
return src;
}
main()
{
char *an;
printf ("%s
",str);
an = strReplace(str,"a3","",3);
printf ("%s
",an);
}
...s1和s2,将字符串s1和s2连接成一个字符串,送入字符数组s1?
答:include<stdio.h> include<string.h> main(){ char str_1[500],str_2[500];int i,j;printf("Input a string s1:\n");gets(str_1);printf("Input a string s2:\n");gets(str_2);for(i=0;str_1[i]!='\0';i++);for(j=0;str_2[j]!='\0';j++)str_1[i+j]=str_...
从键盘输入一个字符串存入数组s[80],统计该字符串的长度并将其中所有...
答:include <stdio.h>#include <string.h>void main(){int i,n;char str[80];gets(str);n=strlen(str);for(i=0;i<n;i++)(str[i]>='a'&&str[i]<='z')?str[i]-=32:0;printf("String length:%d\n%s",n,str);}
一个字符串S(由L个小写字母组成,5<=L<=100,000),然后他把S顺时针绕成...
答:cout <<"输入字母个数:"<<endl;cin>>iNum;cout <<"输入字符串"<<endl;cin.width(iNum+1);cin >>sSource;list<string> slist;for(i=0;i<iNum;i++)slist.push_back(sSource.substr(i,iNum-1)+sSource.substr(0,i));slist.sort();string stemp=slist.front();i=iNum;do { ...
编程序实现功能:从键盘上输入两个字符串s1和s2,将s2 的内容插入到s1内容...
答:(*posp) /*des后半段转录至back*/back[i++] = *posp++;back[i] = '\0'; /*标识字符串结束*/strcat(front,strcat(src,back)); /*三段字符串连接至front*/strcpy (des,front); /*front赋值至des*/ }int main(void) {char s1[LEN],s2[LEN];int pos;puts ("请输入s1:");...
13. 函数fun的功能是: 将s所指字符串中的字母转换为按字母序列的后续字...
答:include <stdio.h> include<string.h> void fun (char *s){ int i,l;l=strlen(s);for(i=0;i<l;i++)if(s[i]>='a'&&s[i]<'z'||s[i]>='A'&&s[i]<'Z')s[i]=s[i]+1;else if(s[i]=='z')s[i]='a';else if(s[i]=='Z')s[i]='A';} void main( ){...
用指针完成如下功能:输入一字符串s,再输入一字符c,输出该字符在字符串...
答:include <stdio.h>int main(){ char str[100],*p=str,c; int count=0; printf("输入:"); scanf("%s",str); getchar(); scanf("%c",&c); while(*p++!=0) if(*(p-1)==c) count++; printf("输出:%d",count); return 0;} ...
从键盘输入一个字符串存入数组s[80],统计该字符串的长度并将其中所有...
答:include <iostream.h> include <string.h> void main(){ char s[80];cin>>s;for(int i=0;i<10;i++){ if(s[i]>='a' && s[i]<='z')s[i]-=32;} cout<<strlen(s)<<endl;cout<<s<<endl;}
用python从键盘输入一个字符串,统计其中大写小写字母以及数字的个数...
答:1、可以这样编写程序:定义一个含有所有小写字母的列表变量w及一个待测字符串变量s。对s字符串中的每一个字符进行循环迭代检测其是否位于变量w中,若为真,则对计数变量c进行加一操作。输出c变量,即为所求。2、初学者的话确实可以通过asciitable来判断字母和数字的区别。Python里面有两个内置函数ord和...
求C语言程序,高手请进...
答:/*2.删除字符串中的字符 输入一个字符串s,再输入一个字符c,将字符串s中出现的所有字符c删除。要求定义并调用函数delchar(s,c),它的功能是将字符串中的出现的所有c字符删除 输入输出示例 Input a string: happy new year Input a char: a After deleted, the string is: hppy new yer*/ ...
Python接收输入一个字符串,统计其中小写字母的个数
答:可以这样编写程序:1、定义一个含有所有小写字母的列表变量w及一个待测字符串变量s。2、对s字符串中的每一个字符进行循环迭代检测其是否位于变量w中,若为真,则对计数变量c进行加一操作。3、输出c变量,即为所求。具体代码及运行示例如下图所示:程序代码及示例运行结果 ...