C语言实现舒尔特表格生成器

     舒尔特表这个方法是世界上最专业最普及最简单的训练法,广泛应用于飞行员航天员的训练,该表为训练注意力和视觉广度和视觉敏锐度的,它从这三方面训练注意力此法坚持一段时间就会感到很明显的进步。

通过代码实现一个 2*2到100*100之内的表,每个表随机产生20组,可以打印输出,也可以产生文件,方便拷贝到word中进行打印,话不多说,直接贴源码。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <time.h>


int main()
{
    int j = 0,number = 0,n = 0,count=1,counter = 0;
    int a[10000]={0};
    char buff[64];
    FILE* fp;

    printf("输入舒尔特表格行数(≤100):");
    scanf("%d",&n);
    srand((unsigned) time(NULL));

    memset(buff, 0, sizeof(buff));
    counter  = 10;
    sprintf(buff,"Schulte_Grid_%dx%d.txt",n,n);
    fp = fopen(buff, "w+");

    for(j=0; j<counter; j++)
    {
      while(count<=n*n)
      {
        number= rand()%(n*n);
        if(a[number]==0)
        {
            a[number]=count;
            count++;
        }
      }

      for(count=0;count<n*n;count++)
      {
        if(count%n==0)
        {
            printf("\n");
            fprintf(fp,"\n");
        }

        printf("%4d ",a[count]);
        fprintf(fp,"%8d ",a[count]);
      }

      fflush(fp);

      count=1;
      memset(a, 0, sizeof(a));
      fprintf(fp,"\n");

   }

    fclose(fp);

}

 生成可执行的程序,输入参数N( 2<= N <= 100)

 打开生成的Schulte_Grid_6x6.txt 文件,将数据拷贝到word或者excel中即可打印


      31       24       27       26       28        5 
       9       35        7       33       16       19 
       1       21       29       10       32       15 
      25       36        6        3        4       30 
      12       18       11        8       13       17 
       2       20       23       34       22       14 

      24       31       26        4       28        2 
      25       32       33       10       15        9 
       1        6       27       34       23       29 
      20        5       12       21       13       36 
      11       35       19       22        3       16 
      17       30       18        8        7       14 

      29       17       23       24       31        5 
       8       26       27        3       18       10 
       1       34        2       21       12       32 
      20       28        9        7        6       13 
      15        4       16       33       36       35 
      19       14       30       25       11       22 

      22       15       21       24       23        4 
      14       35        2        6       30       33 
       9        3       16       34       31       29 
      11       27       26       25       32       19 
      36       17       13       10       20        1 
       5       18       28        8       12        7 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值