T051.合并字符串#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){char a[200],b[100];gets(a);gets(b);strcat(a,b);puts(a);return 0;}T052.字符串排序#include <stdio.h>#include <string.h>void sort(char s[10][11]) {int i,j;char t[11];for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(strcmp(s[j],s[j+1])>0) {strcpy(t,s[j+1]);strcpy(s[j+1],s[j]); strcpy(s[j],t);}}int main(){char a[10][11],i;for(i=0;i<10;i++) scanf("%s",a[i]);sort(a);for(i=0;i<10;i++) printf("%s ",a[i]);printf("\n");return 0;}T053.特殊要求字符串#include <stdio.h>#include <string.h> int main(){char s[100],a[100],t; int len,l,i,j;gets(s);len=strlen(s);l=len/2;for(i=0;i<l;i++)for(j=0;j<l-1-i;j++) if(s[j]<s[j+1]){t=s[j+1];s[j+1]=s[j];s[j]=t;}for(i=0;i<l;i++)a[i]=s[i];for(i=0;i<l;i++)for(j=l+len%2;j<len-i-1;j++)if(s[j]>s[j+1]){t=s[j+1];s[j+1]=s[j];s[j]=t;}for(i=0;i<l;i++){s[i]=s[i+l+len%2];s[l+i+len%2]=a[i];}puts(s);return 0;}T054.统计字母间隔数字的个数并逐一输出#include <stdio.h>int main(){char s[500],*p;int a[100]={0},i=0,j;gets(s);for(p=s;*p!='\0';p++){if(*p>='0'&&*p<='9'){for(;*p!='\0'&&*p>='0'&&*p<='9';p++)a[i]=a[i]*10+(*p-'0');i++;}}printf("%d\n",i);for(j=0;j<i;j++)printf("%d ",a[j]);printf("\n");return 0;}T055.Music Composer#include <stdio.h>#include <string.h>int main(){char s[200];gets(s);if(s[0]=='A'&&s[1]=='#'){s[0]='B';s[1]='b';printf("%s\n",s);}else if(s[0]=='A'&&s[1]=='b'){s[0]='G';s[1]='#';printf("%s\n",s);} else if(s[0]=='B'&&s[1]=='b'){s[0]='A';s[1]='#';printf("%s\n",s);}else if(s[0]=='C'&&s[1]=='#'){s[0]='D';s[1]='b';printf("%s\n",s);}else if(s[0]=='D'&&s[1]=='b'){s[0]='C';s[1]='#';printf("%s\n",s);}else if(s[0]=='D'&&s[1]=='#'){s[0]='E';s[1]='b';printf("%s\n",s);}else if(s[0]=='E'&&s[1]=='b'){s[0]='D';s[1]='#';printf("%s\n",s);}else if(s[0]=='F'&&s[1]=='#'){s[0]='G';s[1]='b';printf("%s\n",s);}else if(s[0]=='G'&&s[1]=='b'){s[0]='F';s[1]='#';printf("%s\n",s);}else if(s[0]=='G'&&s[1]=='#'){s[0]='A';s[1]='b';printf("%s\n",s);}else printf("UNIQUE\n");return 0;}T056.字符串复制(1)#include <stdio.h>void copy(char s[],char a[],int m){int i=0;for(i=m,m=0;s[i]!='\0';i++,m++)a[m]=s[i];a[m]='\0';}int main(){char s[101],a[100];int m,i;gets(s);scanf("%d",&m);copy(s,a,m);puts(a);return 0;}(2)#include<stdio.h>int main(){char t[100],s[100];int m,count,i;char *p; /*p要和t的类型相同,否则p的步长是int的长度,p每次++都会偏移sizeof(int)个字节,而不是sizeof(char)*/i=0;count=0;p=&t[0]; /*p和t的类型相同,看样子你用的是比较老的C编译器,如果用目前的C++编译器,那么这一句的问题编译时刻就可以发出错误信息,编译都不能通过*/printf("Input a string:");gets(t);printf("Input an integer:");scanf("%d",&m);while(count<m){p++;count++;}while(*p!='\0'){s[i]=*p;p++;i++;}s[i]='\0';puts(s);return 0;}T057.字符串比较#include <stdio.h>int stringcompare(char s1[],char s2[]) {for(;*s1==*s2;s1++,s2++)if(*s1=='\0') return 0;return *s1-*s2;}int main(){char s1[100],s2[100];int d;gets(s1),gets(s2);d=stringcompare(s1,s2);printf("%d\n",d);return 0;}T058.删除字符#include <stdio.h>void deletechar(char s[],char c) {int i,j;for(i=j=0;s[i]!='\0';i++)if(s[i]!=c)s[j++]=s[i];s[j]='\0';}int main(){char s[100],c;gets(s);scanf("%c",&c); deletechar(s,c);puts(s);return 0;}T059.字符串左中右#include<stdio.h>#include<string.h>void Left(char src[],int n,char dest[]){char *p;int i;p=src;for(i=0;i<n;i++){dest[i]=*p++;}dest[i]='\0';}void Right(char src[],int n,char dest[]) {int i,len;char *p;len=strlen(src);p=&src[len-n];for(i=0;i<n;i++){dest[i]=*p++;}dest[i]='\0';}void Mid(char src[],int loc,int n,char dest[]) {int i;char *p;p=&src[loc];for(i=0;i<n;i++){dest[i]=*p++;}dest[i]='\0';}int main(){char str[20]={'\0'},strL[20]={'\0'},strR[20]={'\0'} ,strM[20]={'\0'};int n,loc;gets(str);scanf("%d%d",&n,&loc);Left(str,n,strL);printf("%s\n",strL);Right(str,n,strR);printf("%s\n",strR);Mid(str,loc,n,strM);printf("%s\n",strM);return 0;}T060.Coin test#include <stdio.h>#include <string.h>#include <math.h>int gcd(int a,int b){if(a==0) {return b;}else if(b==0) {return a;}else{ int i=a>b?b:a;while(a%i!=0||b%i!=0){i--;}return i;}}int main(){char a[1000];int c=0,b=0,i,m;gets(a);m=strlen(a);for(i=0;i<m;i++){if(a[i]=='S'){printf("WA\n");break;}if(a[i]=='U')c++;if(a[i]=='D')b++;}if(c+b!=m) return 0;else{if(fabs(((double)c)/m-0.5)>0.003) printf("Fail\n");elseprintf("%d/%d\n",c/gcd(c,m),m/gcd(c,m));return 0;}}。