文档介绍:11-1
reverse(char *str,int m,int n)
{
int t;
if(m<n)
{
t=*(str+m);
*(str+m)=*(str+n);
*(str+n)=t;
reverse(str,m+1,n-1);
}
else
return;
}
#include""
main()
{ char str[50];
int start,end;
gets(str);
scanf("%d%d",&start,&end);
reverse(str,start,end);
printf("%s\n",str);
}
11-2
strsub(char *sa,char *sb,char *sc)
{ char *q;
int flag;
while(*sa != '\0' )
{ q=sb;
flag=0;
while(*q!='\0')
{ if(*sa==*q)
{ flag=1;
break;
}
q++;
}
if(flag==0)
{ *sc=*sa;
sc++;
}
sa++;
}
return;
}
#include""
main()
{ char s1[80],s2[80],s3[80]={0};
int b,e;
gets(s1);
gets(s2);
strsub(s1,s2,s3);
printf("%s\n",s3);
}
11-2-2
#include <>
main()
{
char s1[80],s2[80];
int m,n,flag;
gets(s1);
gets(s2);
for(m=0;s1[m]!='\0';m++)
{
flag=0;
for(n=0;s2[n]!='\0';n++)
{
if(s1[m]==s2[n])
{
flag=1;
break;
}
}
if(flag==0)
{
printf("%c",s1[m]);
}
}
return(0);
}
11-3
#include <>
int m,p;
sort (int term, int a[ ], int count)
{ int i, h, k=0, l=count ;
do
{ if( l == 0 )
break;
else
{ h = k+l/2;
m++;
if( term < a[h] )
l = l/2;
else if( term > a[h] )
{ k = h+1;
l = (l+1)/2-1;
}
else
return(++p);
}
}while(l>0);
for( i=count; i>k; i--)
a[i]=a[i-1];
a[k] = term;
return ;
}
main()
{ int n,i,b[20]={0},a[20]={0};
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&b[i]);
for(i=0;i<n;i++)
sort( b[i], a, i-p );
for( i=0;i<n-1-p;i++)
printf("%d ",a[i] );
printf("%d\n",a[i]);
}
12-1
#include <>
main()
{
int i,j,k,b,min=32767,s1[4][3],s2[3]={0};
for(i=0;i<4;i++)
for(j=0;j<3;j++)
scanf("%d",&s1[i][j]);
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(i==j)
continue;
for(k=0;k<4;k++)
{
if(i==k||j==k)
continue;
b=s1[i][0]+s1[j][1]+s1[k][2];
if(b<min)
{
min=b;
s2[0]=i,s2[1]=j,s2[2]=k;
}
}
}
}