字符串除去空格

#include <stdio.h>

//建立棋盘
void createBoard1(void ***p,int n)
{
    *p = (void **)malloc(sizeof(void*)*n);//申请n*n的空间
    for(int i =0;i<n;i++)
    {
        (*p)[i] = (void *)malloc(sizeof(char)*n);
        memset((*p)[i],'o',n);
    }
    return 0;
}
//下子
void initBoard(char***p,int n)
{

    time_t ts;
    srand((unsigned int)time(&ts));//时间种子
    for(int s=0;s<n;)//下n个棋子
    {
        int i =rand()%n;
        int y =rand()%n;//随机生成小于n的随机数
         if((*p)[i][y] !='x')
         {
             (*p)[i][y] ='x';
             s++;
         }
         else
             ;


    }

}
//判断棋盘好坏
int printBoard(char**p,int n)
{


    int xi = 0;//标识符
    int xy = 0;
    for(int i = 0; i <n ;i++)
    {
        int sumx = 0;//记录‘x’的个数
        int sumy = 0;
        for(int j = 0;j<n;j++)//搜索行上x的个数
        {
            if(p[i][j]=='x')
                sumx ++;
            if(sumx==2)
            {
                xi = 1;
                break;
            }

        }
        for(int j = 0;j<n;j++)//搜索列上的x数
        {
            if(p[j][i]=='x')
                sumy ++;
            if(sumy==2)
            {
                xy = 1;
                break;
            }

        }
    }
    for(int i = 0;i<n;i++)//打印棋盘
    {
        for(int j = 0;j <n ;j++)
        {
            printf("%c ",p[i][j]);
        }
        putchar(10);
    }

    if(xy==1||xi ==1)//判断棋盘的好坏
        printf("%s\n","good");
    else
        printf("%s\n","not good");
    return 0;
}
//销毁棋盘
int destroyBoard1(void ***p,int n)
{
    for(int i = 0 ;i<n;i++)
    {
        free((*p)[i]);
    }
    free(*p);
}
int main(void)
{
    int n;
    printf("input n\n");
    scanf("%d",&n);
    char **p = NULL;
    createBoard1(&p,n);
    initBoard(&p,n);
    printBoard(p,n);
    destroyBoard1(&p,n);
    return 0;
}

你可能感兴趣的:(字符串除去空格)