没注意看这个
typedef int ( *Op )( int, int ); int main( void ) { int count[ 4 ] = { 0 };//运算种类统计 int correct[ 4 ] = { 0 };//运算种类正确统计 int ix; int op1, op2;//操作数 Op Oper[ 4 ] = { addLmt100, subLmt100, mulLmt100, divLmt100 }; char ch; srand( ( unsigned )time( NULL ) );//播散随机数种子 printf( "是否玩计算游戏?是输入 Y,否则输入任意字符退出\n" ); while( 'Y' == ( ch = getchar() ) ) { ix = rand() % 4;//生成随机数,选择计算种类。 op1 = rand() % 99;//生成随机数,作为第一个操作数 op2 = rand() % 99;//生成随机数,作为第二个操作数 ++count[ ix ]; if( Oper[ ix ]( op1, op2 ) )//假设你的加减乘除函数,如果回答正确返回1,回答错误返回0 ++correct[ ix ]; printf( "是否继续?继续输入 Y,否则输入任意字符\n" ); } printf( "加法次数 = %d, 减法次数 = %d,乘法次数 = %d,除法次数 = %d\n", count[ 0 ], count[ 1 ], count[ 2 ], count[ 3 ] ); printf( "加法正确次数 = %d, 减法正确次数 = %d,乘法正确次数 = %d,除法正确次数 = %d\n", correct[ 0 ], correct[ 1 ], correct[ 2 ], correct[ 3 ] ); return 0; }
[此贴子已经被作者于2017-6-14 17:20编辑过]