【C】小学校一、二年生の数学能力試験の問題を間違えて表示し、自動的に点数をつける

3547 ワード

#include 
#include 
#include 
#include 

#define N 50      //      

int ErrNo[N]={0};	//    
int ErrCnt=0;		//    
int Erri[N]={0},Errj[N]={0},ErrAns[N]={0};  //               
char ErrFlag[N]={0};	//      
int start=0,end=0;
int n=0;				//        

int op();
void test_jj(int);
void test_j();
void score();
void test_cc();




main()
{int i;
 i=op();
 switch(i)
 {case 1:test_j();break;			//10        
  case 2:test_jj(10);break;			//10         
  case 3:test_jj(100);break;		//100         
  case 4:test_jj(1000);break;		//1000         
  case 5:test_cc();break;			//      
  default:printf("    ,    
");system("pause");return; } score(); } int op() // {int i; printf("===============================================
"); printf("= =
"); printf("= =
"); printf("= =
"); printf("===============================================
"); printf("
"); printf("\t1:0~10
"); printf("\t2:0~10
"); printf("\t3:0~100
"); printf("\t4:0~1000
"); printf("\t5:
"); scanf("%d",&i); //system("pause"); return i; } void test_j() //10 { int i,j,cnt,answer; //i ,j ,cnt ,answer srand((unsigned)time(NULL)); // system("cls"); start=time(NULL); printf("

\t ,
\t"); system("pause"); cnt=0; while(cnt=10) continue; system("cls"); printf("
\t %d :
",++cnt); printf("\t%2d+%-2d=",i,j); scanf("%d",&answer); if(i+j!=answer) {ErrNo[ErrCnt]=cnt+1; Erri[ErrCnt]=i; Errj[ErrCnt]=j; ErrFlag[ErrCnt]='+'; ErrAns[ErrCnt]=answer; ErrCnt++; } } system("cls"); end=time(NULL); printf("

\t ,

"); system("pause"); } void test_jj(int n) // , n { int i,j,flag,cnt,answer; //i ,j ,flag 1 0 ,cnt ,answer srand((unsigned)time(NULL)); // system("cls"); start=time(NULL); printf("

\t ,
"); system("pause"); cnt=0; while(cnt=n) continue; if(!flag&&i-j<0) continue; system("cls"); printf("
\t %d :
",++cnt); printf("\t%2d%c%-2d=",i,flag?'+':'-',j); scanf("%d",&answer); if(flag&&i+j!=answer || !flag&&i-j!=answer) {ErrNo[ErrCnt]=cnt+1; Erri[ErrCnt]=i; Errj[ErrCnt]=j; ErrFlag[ErrCnt]=flag?'+':'-'; ErrAns[ErrCnt]=answer; ErrCnt++; } } system("cls"); end=time(NULL); printf("

\t ,

"); system("pause"); } void test_cc() // { int i,j,cnt,answer; //i ,j ,flag 1 0 ,cnt ,answer srand((unsigned)time(NULL)); // system("cls"); start=time(NULL); printf("

\t ,
"); system("pause"); cnt=0; while(cnt