西工大C语言POJ作业_西工大c语言poj作业
西工大C语言POJ作业由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“西工大c语言poj作业”。
T051.合并字符串
#include #include #include int main(){
char a[200],b[100];
gets(a);
gets(b);
strcat(a,b);
puts(a);
return 0;}
T052.字符串排序
#include #include void sort(char s[10][11]){ int i,j;char t[11];for(i=0;i0){ 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
#include #include int main(){ char s[100],a[100],t;int len,l,i,j;gets(s);len=strlen(s);l=len/2;for(i=0;is[j+1]){ t=s[j+1];s[j+1]=s[j];s[j]=t;} for(i=0;i
#include int main(){ char s[500],*p;int a[100]={0},i=0,j;gets(s);for(p=s;*p!=' ';p++){
if(*p>='0'&&*p
{
for(;*p!=' '&&*p>='0'&&*p
a[i]=a[i]*10+(*p-'0');
i++;
} } printf(“%dn”,i);for(j=0;j
printf(“%d ”,a[j]);printf(“n”);return 0;} T055.Music Composer
#include #include int main(){
char s[200];
gets(s);
if(s[0]=='A'&&s[1]=='#'){s[0]='B';s[1]='b';printf(“%sn”,s);}
else if(s[0]=='A'&&s[1]=='b'){s[0]='G';s[1]='#';printf(“%sn”,s);}
else if(s[0]=='B'&&s[1]=='b'){s[0]='A';s[1]='#';printf(“%sn”,s);}
else if(s[0]=='C'&&s[1]=='#'){s[0]='D';s[1]='b';printf(“%sn”,s);}
else if(s[0]=='D'&&s[1]=='b'){s[0]='C';s[1]='#';printf(“%sn”,s);}
else if(s[0]=='D'&&s[1]=='#'){s[0]='E';s[1]='b';printf(“%sn”,s);}
else if(s[0]=='E'&&s[1]=='b'){s[0]='D';s[1]='#';printf(“%sn”,s);}
else if(s[0]=='F'&&s[1]=='#'){s[0]='G';s[1]='b';printf(“%sn”,s);}
else if(s[0]=='G'&&s[1]=='b'){s[0]='F';s[1]='#';printf(“%sn”,s);}
else if(s[0]=='G'&&s[1]=='#'){s[0]='A';s[1]='b';printf(“%sn”,s);}
else printf(“UNIQUEn”);
return 0;} T056.字符串复制
(1)#include void copy(char s[],char a[],int m){ int i=0;for(i=m,m=0;s[i]!=' ';i++,m++)a[m]=s[i];a[m]=' ';} 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 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
p++;
count++;} while(*p!=' '){
s[i]=*p;
p++;
i++;} s[i]=' ';puts(s);return 0;} T057.字符串比较
#include int stringcompare(char s1[],char s2[]){ for(;*s1==*s2;s1++,s2++)if(*s1==' ')return 0;return *s1-*s2;} int main(){ char s1[100],s2[100];int d;gets(s1),gets(s2);d=stringcompare(s1,s2);printf(“%dn”,d);return 0;} T058.删除字符
#include void deletechar(char s[],char c){ int i,j;for(i=j=0;s[i]!=' ';i++)if(s[i]!=c)s[j++]=s[i];s[j]=' ';} int main(){ char s[100],c;gets(s);scanf(“%c”,&c);deletechar(s,c);puts(s);return 0;}
T059.字符串左中右 #include #include void Left(char src[],int n,char dest[]){ char *p;int i;p=src;for(i=0;i
dest[i]=*p++;} dest[i]=' ';} void Right(char src[],int n,char dest[]){ int i,len;char *p;len=strlen(src);p=&src[len-n];for(i=0;i
dest[i]=*p++;} dest[i]=' ';} void Mid(char src[],int loc,int n,char dest[]){
int i;char *p;p=&src[loc];for(i=0;i
dest[i]=*p++;} dest[i]=' ';} int main(){ char str[20]={' '},strL[20]={' '},strR[20]={' '} ,strM[20]={' '};int n,loc;gets(str);scanf(“%d%d”,&n,&loc);Left(str,n,strL);printf(“%sn”,strL);Right(str,n,strR);printf(“%sn”,strR);Mid(str,loc,n,strM);printf(“%sn”,strM);return 0;}
T060.Coin test
#include #include #include 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
if(a[i]=='S')
{
printf(“WAn”);
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(“Failn”);else printf(“%d/%dn”,c/gcd(c,m),m/gcd(c,m));return 0;}