2013=10=27 字符串 统计 ,删除,连接,变换
(一)统计
#include <stdio.h> int f(char *s) { int i,j ; i=j=0 ; while (*(s+i)!='\0') { if (*(s+i)>='0' && *(s+i)<='9') j++ ; i++ ; } return j ; } int main ( ) { char s[100] ; gets(s) ; printf("%d",f(s)); } ********************************************************************* #include <stdio.h> int f(char *s) { int t=0 ; while (*s) //(*s!='\0') { if (*s>='A' && *s<='Z' || *s>='a' && *s<='z') t++ ; s++ ; } return t ; } int main ( ) { int t ; char a[]="Hello abcd AbCdcD 123 abcd" ; printf("%d\n", f(a) ); } #include <stdio.h> int f(char *s) { int t=0 ; while (*s) //(*s!='\0') { if (*s>='A' && *s<='Z' || *s>='a' && *s<='z') t++ ; s++ ; } return t ; } int main ( ) { int t ; char a[10000]; gets(a); printf("%d\n", f(a) ); }
(二)删除
#include <stdio.h> int main ( ) { char s[100],c='a'; int i,j ; gets(s) ; i=j=0 ; int k=0; while(s[i]!='\0') { if(s[i]==c ) {i++ ; k++;} else { s[j]=s[i] ;j++ ;i++; } } s[j]='\0' ; puts(s) ; printf("%d",k); } #include <stdio.h> int main ( ) { char s[100],c='a'; int i,j ; gets(s) ; i=j=0 ; while(s[i]!='\0') { if(s[i]==c ) i++ ; else { s[j]=s[i] ;j++ ;i++; } } s[j]='\0' ; puts(s) ; } #include <stdio.h> int main ( ) { char s[100],c='a'; int i,j ; gets(s) ; i=j=0 ; while(s[i]!='\0') { if(s[i]!=c ) { s[j]=s[i] ;j++ ;i++; } else i++ ; } s[j]='\0' ; puts(s) ; } #include <stdio.h> int main ( ) { char s[100],c='a'; int i,j ; gets(s) ; i=j=0 ; while(s[i]!='\0') { if(s[i]!=c ) { s[j]=s[i] ;j++ ; } i++ ; } s[j]='\0' ; puts(s) ; } #include <stdio.h> int main ( ) { char s[100],c='a'; int i,j ; gets(s) ; i=j=0 ; while(s[i]!='\0') { if(s[i]!=c ) { s[j++]=s[i] ; } i++ ; } s[j]='\0' ; puts(s) ; } ********************************************************************************** #include <stdio.h> void f(char s[],char c) { int i,j; i=j=0 ; while(s[i]!='\0') { if(s[i]!=c) { s[j]=s[i]; j++ ; } i++ ; } s[j]='\0' ; } int main ( ) { char s[100] ; gets(s) ; f(s,'a') ; puts(s) ; return 0; } { if(s[i]==c ) i++ ; else { s[j]=s[i] ;j++ ;i++; } } ************* { if(s[i]==c ) i++ ; else { s[j++]=s[i++] ; } } *************************** #include <stdio.h> void f(char s[],char c) { int i,j; i=j=0 ; while(s[i]!='\0') { if(s[i]==c ) i++ ; else { s[j]=s[i] ;j++ ;i++; } } s[j]='\0' ; } int main ( ) { char s[100] ; gets(s) ; f(s,'a') ; puts(s) ; return 0; } #include <stdio.h> void f(char *s,char c) { int i,j; i=j=0 ; while(s[i]!='\0') { if(s[i]==c ) i++ ; else { s[j]=s[i] ;j++ ;i++; } } s[j]='\0' ; } int main ( ) { char s[100] ; gets(s) ; f(s,'a') ; puts(s) ; return 0; } #include <stdio.h> void f(char *s,char c) { int i,j; i=j=0 ; while(s[i]!='\0') { if(s[i]!=c) { s[j]=s[i]; j++ ; } i++ ; } s[j]='\0' ; } int main ( ) { char s[100] ; gets(s) ; f(s,'a') ; puts(s) ; return 0; }
#include <stdio.h> void f(char s[],char c) { int i,j; i=j=0 ; while(s[i]!='\0') { if(s[i]!=c) { s[j]=s[i]; i++ ; } //s[j]!='\0' ; } s[j]='\0' ; } int main ( ) { char s[100] ; gets(s) ; f(s,'a') ; puts(s) ; return 0; } #include <stdio.h> void f(char s[],char c) { int i,j; i=j=0 ; while(s[i]!='\0') { if(s[i]!=c) { s[j]=s[i]; i++ ; } s[j]!='\0' ; } //s[j]='\0' ; } int main ( ) { char s[100] ; gets(s) ; f(s,'a') ; puts(s) ; return 0; }
(三)连接
#include <stdio.h> void f(char *s1, char *s2 ) { while(*s1) s1++ ; while(*s2) *s1++=*s2++ ; // { *s1=*s2 ; s1++ ,s2++ ; } *s1 ='\0' ; } int main ( ) { char a[20]="Hello our" ,b[]="world!" ; f(a,b) ; printf("%s\n",a) ; printf("%s\n",b) ; } #include <stdio.h> void f(char *s1, char *s2 ) { while(*s1) s1++ ; while(*s2) { *s1=*s2 ; s1++ ; s2++ ; } //*s1++=*s2++ ; *s1 ='\0' ; } int main ( ) { char a[20]="Hello our" ,b[]="world!" ; f(a,b) ; printf("%s\n",a) ; printf("%s\n",b) ; } #include <stdio.h> void f(char *s1, char *s2 ) { while(*s1) s1++ ; while(*s2) { *s1=*s2 ; s1++ ; s2++ ; } //*s1++=*s2++ ; *s1 ='\0' ; } int main ( ) { char a[20]="Hello our" ,b[]="world!" ; f(a,b) ; printf("%s\n",a) ; printf("%s\n",b) ; } *************************************************************** #include <stdio.h> void f(char *s1, char *s2 ) { while(*s1) s1++ ; while(*s2) *s1++=*s2++ ; // { *s1=*s2 ; s1++ ,s2++ ; } *s1 ='\0' ; } int main ( ) { char a[20] ,b[20] ; gets(a) ; gets(b) ; f(a,b) ; printf("%s\n",a) ; printf("%s\n",b) ; } #include <stdio.h> void f(char *s1, char *s2 ) { while(*s1) s1++ ; while(*s2) { *s1=*s2 ; s1++ ; s2++ ; } //*s1++=*s2++ ; *s1 ='\0' ; } int main ( ) { char a[20] ,b[20] ; gets(a) ; gets(b) ; f(a,b) ; printf("%s\n",a) ; printf("%s\n",b) ; } #include <stdio.h> void f(char *s1, char *s2 ) { while(*s1) s1++ ; while(*s2) { *s1=*s2 ; s1++ ; s2++ ; } //*s1++=*s2++ ; *s1 ='\0' ; } int main ( ) { char a[20] ,b[20] ; gets(a) ; gets(b) ; f(a,b) ; printf("%s\n",a) ; printf("%s\n",b) ; }
//将2行英文连接后输出。不能使用strcat函数。 //要求:编写函数f(char *s1,char *s2,char *s3),将字符指针*s1中字符与字符指针*s2中字符连接到到字符指针*s3中 #include<stdio.h> void f(char *s1,char *s2,char *s3) {while(*s1) *s3++=*s1++; while(*s2) *s3++=*s2++; *s3='\0'; } main() {char c[400],a[200],b[200]; gets(a); gets(b); f(a,b,c); puts(c); }
(四)变换
//字符串转化you变we #include <stdio.h> #include<string.h> int main(int argc, char *argv[]) { int l,i; char a[1002]; while(gets(a)) { l=strlen(a); for(i=0;i<l-3;i++) if(a[i]=='y'&&a[i+1]=='o'&&a[i+2]=='u') { printf("we"); i+=2; } else printf("%c",a[i]); //for(i=l-3;i<l;i++) i=l-3; if(a[i]=='y'&&a[i+1]=='o'&&a[i+2]=='u') printf("we\n"); else { for(i=l-3;i<l-1;i++) printf("%c",a[i]); printf("%c\n",a[l-1]); } } return 0; } #include <stdio.h> #include<string.h> int main( ) { int i ; void f(char str[]) ; char str[10] ; gets(str) ; f(str) ; for(i=0 ;i<10 ;i++) printf("%c\n",str[i]) ; str[10]='\0' ; } void f(char str[10]) { int i ; for(i=0 ; i<10 ; i++) if(str[i]>='a' && str[i]<='z') str[i]=str[i]-32 ; } #include <stdio.h> #include<string.h> void f(char str[]) ; int main( ) { int i ; char str[10] ; gets(str) ; f(str) ; for(i=0 ;i<10 ;i++) printf("%c\n",str[i]) ; str[10]='\0' ; } void f(char str[10]) { int i ; for(i=0 ; i<10 ; i++) if(str[i]>='a' && str[i]<='z') str[i]=str[i]-32 ; } ************************************************* #include <stdio.h> void f(char *s) { while(*s!='\0') { if(*s>='A' && *s<='Z') *s=*s+32 ; s++ ; } } int main ( ) { char a[]="Hello abcd AbCdcD 123 abcd" ; f(a) ; printf("%s\n",a); } #include <stdio.h> void f(char *s) { while(*s!='\0') { if(*s>='A' && *s<='Z') *s=*s+32 ; s++ ; } } int main ( ) { char a[10000]; gets(a) ; f(a) ; printf("%s\n",a); } #include <stdio.h> int f(char *s) { int t=0 ; while(*s) //(*s!='\0') { if(*s>='A' && *s<='Z' || *s>='a' && *s<='z') t++ ; s++ ; } return t ; } int main ( ) { int t ; char a[]="Hello abcd AbCdcD 123 abcd" ; printf("%d\n", f(a) ); }