……

统计形参t所指二维数组中字母A和C的个数

请编写函数fun.其功能是分别统计形参t所指二维数组中字母a和c的个数?

#include  <stdio.h>
#include  <stdlib.h>
#define  M  14
void NONO();
void  fun( char (*t)[M], int *a ,int *c)
{
    int i,j;
    int m=0,n=0;
    for(i=0;i<M;i++)
    {
        for(j=0;j<M;j++)
        {
            if(t[i][j]=='A')
            {
                m++;
            }
            if(t[i][j]=='C')
            {
                n++;
            }
        }
    }
    *a=m;
    *c=n;
}

void  get( char (*s)[M] )
{  int  i, j;
   for( i=0; i<M; i++ )
   {  for( j=0; j<M; j++)
      {  s[i][j]=65+rand()%12; printf( "%c ",s[i][j]); }
      printf("\n");
   }
}

main()
{  char  a[M][M];
   int   x, y;
   get (a);
   fun ( a, &x,&y );
   printf("A = %d   C = %d\n",x,y);
   NONO();
}

void NONO()
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
  FILE *fp, *wf ;
  int i, j, x, y ;
  char  a[M][M];

  fp = fopen("..\\in.dat","r") ;
  wf = fopen("..\\out.dat","w") ;
  for( i=0; i<M; i++ )
  {  for( j=0; j<M; j++)
     {  fscanf(fp, "%c ", &a[i][j]); }
  }
  fun ( a, &x,&y );
  fprintf(wf, "A=%d\n", x) ;
  fprintf(wf, "C=%d\n", y) ;
  fclose(fp) ;
  fclose(wf) ;
}

运行结果

posted @ 2020-04-25 10:37  十零  阅读(543)  评论(0编辑  收藏  举报