018. C语言基础

//   171.c
#include<stdio.h>
void catfun(char a[],char b[])
{
   while(*a)a++;
   while(*b)*a++=*b++;
   *a=0;
}
void main()
{
   char a[20]="this ",b[]="book";
   catfun(a,b);
   puts(a);
   getch();
}
//   172.c
#include<stdio.h>
int fun(char a[],char x)
{
   int s=0;
   while(*a)
   {
     if(x==*a)s++;
     a++;
   }
   return s;
}
void main()
{
   printf("%d",fun("thisisabook",'i'));
   getch();
}
//   173.c
#include<stdio.h>
int fun1(char a[],char b[])
{
    while(*a==*b&&*b&&*a){a++;b++;}
    if(*b==0)return 1;
}
int fun(char a[],char b[])
{
    int s=0;
    while(*a)
    {
       if(fun1(a,b)==1)s++;
       a++;
    }
    return s;
}
void main()
{
    char a[]="this is a book",b[]="is";
    printf("%d",fun(a,b));
    getch();
}
//   174.c
#include<stdio.h>
void fun(char a[],char x)
{
   char *p=a;
   while(*a)
   {
      if(*a!=x)*p++=*a;
      a++;
   }
   *p=0;
}
void main()
{
   char a[]="thisisabook";
   fun(a,'i');
   puts(a);
   getch();
}
//   175.c
#include<stdio.h>
int fun1(char a[],char b[])
{
   while(*a==*b&&*a&&*b){a++;b++;}
   if(*b==0)return 1;
   return 0;
}
void fun(char a[],char b[])
{
   char *p,*q;
   while(*a)
   {
      if(fun1(a,b)==1)
      {strcpy(a,a+strlen(b));continue;
      }
      a++;
   }
}
void main()
{
   char a[]="thisisabook",b[]="is";
   fun(a,b);
   puts(a);
   getch();
}
//   176.c
#include<stdio.h>
void fun(char a[])
{
   char *p,*q,*k=a;
   for(p=a;*p;p++)
     {for(q=a;q<p;q++)
       if(*p==*q)break;
      if(q==p)*k++=*p;
     }
   *k=0;
}
void main()
{
   char a[]="aabbaaccddaabbcceefffabddeabf";
   fun(a);
   puts(a);
   getch();
}
//   177.c
#include<stdio.h>
void main()
{
   int a[20],*p;
   for(p=a;p<a+20;p++)
   {
      if(p-a==1||p-a==0)*p=1;
      else *p=*(p-1)+*(p-2);
   }
   for(p=a;p<a+20;p++)
     printf("%d ",*p);
   getch();
}
//    178.c
#include<stdio.h>
void main()
{
   int a[10][10],(*p)[10],*q;
   for(p=a;p<a+10;p++)
     for(q=*p;q-*p<=p-a;q++)
     {
        if(q-*p==0||p-a==q-*p)*q=1;
        else *q=*(*(p-1)+(q-*p))+*(*(p-1)+(q-*p-1));
     }
   for(p=a;p<a+10;p++,printf("\n"))
     for(q=*p;q-*p<=p-a;q++)
      printf("%4d",*q);
   getch();
}
//    179.c
#include<stdio.h>
void main()
{
   int a[10][10],(*p)[10],*q;
   for(p=a;p<a+10;p++)
     for(q=*p;q-*p<=p-a;q++)
     {
        if(q-*p==0||p-a==q-*p)a[p-a][q-*p]=1;
        else a[p-a][q-*p]=a[p-a-1][q-*p]+a[p-a-1][q-*p-1];
     }
   for(p=a;p<a+10;p++,printf("\n"))
     for(q=*p;q-*p<=p-a;q++)
      printf("%4d",*q);
   getch();
}
//    180.c
#include<stdio.h>
void main()
{
   int a[5][5],(*p)[5],*q,m=1,t,*k1,*k2;
   for(p=a;p<a+5;p++)
     for(q=*p;q<*p+5;q++)
       *q=m++;
   for(p=a;p<a+5;p++)
     if((p-a)%2==1)
     {
        for(k1=*p,k2=*p+4;k1<k2;k1++,k2--)
          {t=*k1;*k1=*k2;*k2=t;}
     }
   for(p=a;p<a+5;p++,printf("\n"))
     for(q=*p;q<*p+5;q++)
       printf("%3d",*q);
   getch();
}

推荐阅读更多精彩内容