#include
#include
#include
#include
int menu()
{
int choice;
system("cls");
printf("**数字益智应用软件 **\n");
printf("*********************\n");
printf("**1、一位数加减法 **\n");
printf("**2、二位数加减法 **\n");
printf("**3、排 序 游 戏 **\n");
printf("**4、求 最 值 游 戏**\n");
printf("**5、新 排 序 游 戏**\n");
printf("**6、退 出 游 戏 **\n");
printf("*********************\n");
printf("请选择:");
scanf("%d",&choice);
while(choice<1||choice>6)
{
printf("请重新选择:");
scanf("%d",&choice);
}
return choice;
}
void Game1()
{
int a,b,c,ans;
system("cls");
srand(time(NULL));
a=rand()%10;
b=rand()%10;
c=rand()%10;
if(b&1)
{
printf("%d + %d = ",a,c);
scanf("%d",&ans);
if(ans == a+c)
printf("正确!\n");
else
printf("错误!\n");
}
else
{
while(a-c<0)
{
a=rand()%10;
c=rand()%10;
}
printf("%d - %d = ",a,c);
scanf("%d",&ans);
if(ans == a-c)
printf("正确!\n");
else
printf("错误!\n");
}
system("pause");
}
void Game2()
{
int a,b,c,ans;
system("cls");
srand(time(NULL));
a=rand()%90+10;
b=rand()%100;
c=rand()%90+10;
if(b&1)
{
printf("%d + %d = ",a,c);
scanf("%d",&ans);
if(ans == a+c)
printf("正确!\n");
else
printf("错误!\n");
}
else
{
while(a-c<0)
{
a=rand()%90+10;
c=rand()%90+10;
}
printf("%d - %d = ",a,c);
scanf("%d",&ans);
if(ans == a-c)
printf("正确!\n");
else
printf("错误!\n");
}
system("pause");
}
void Game3()
{
int arr[5],i,j,ans[5],temp;
system("cls");
srand(time(NULL));
for(i=0;i<5;i++)
{
arr[i]=rand()%10;
printf("%d\t",arr[i]);
}
printf("\n请输入排序结果:\n");
for(i=0;i<5;i++)
{
scanf("%d",&ans[i]);
}
for(i=0;i<5;i++)
{
for(j=i+1;j<5;j++)
{
if(arr[i]>arr[j])
{
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
for(i=0;i<5;i++)
{
if(arr[i]!=ans[i])
{
printf("答案错误! 正确答案为:\n");
for(j=0;j<5;j++)
{
printf("%d\t",arr[i]);
}
printf("\n");
system("pause");
return;
}
}
printf("答案正确!\n");
system("pause");
}
void Game4()
{
int arr[5],i,ans,min=10,max=0;
system("cls");
srand(time(NULL));
for(i=0;i<5;i++)
{
arr[i]=rand()%10;
printf("%d\t",arr[i]);
if(min>arr[i])
{
min=arr[i];
}
if(max
{
max=arr[i];
}
}
printf("\n请输入最大值:");
scanf("%d",&ans);
if(ans==max)
{
printf("答案正确!\n");
}
else
{
printf("答案错误!最大值为:%d\n",max);
}
printf("请输入最小值:");
scanf("%d",&ans);
if(ans==min)
{
printf("答案正确!\n");
}
else
{
printf("答案错误!最小值为:%d\n",min);
}
system("pause");
}
void Game5()
{
int *arr,i,j,*ans,temp,K,M,N;
system("cls");
printf("请输入K,将随机产生K个数:");
scanf("%d",&K);
arr = (int*)malloc(sizeof(int)*K);
ans = (int*)malloc(sizeof(int)*K);
printf("请输入M,作为区间下限:");
scanf("%d",&M);
printf("请输入N,作为区间上限:");
scanf("%d",&N);
srand(time(NULL));
for(i=0;i
{
arr[i]=rand()%(N-M)+M;
printf("%d\t",arr[i]);
}
printf("\n请输入排序结果:\n");
for(i=0;i
{
scanf("%d",&ans[i]);
}
for(i=0;i
{
for(j=i+1;j
{
if(arr[i]>arr[j])
{
temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
for(i=0;i
{
if(arr[i]!=ans[i])
{
printf("答案错误! 正确答案为:\n");
for(j=0;j
{
printf("%d\t",arr[i]);
}
printf("\n");
system("pause");
return;
}
}
printf("答案正确!\n");
system("pause");
}
int main()
{
int choice;
do
{
choice=menu();
switch(choice)
{
case 1:
Game1();
break;
case 2:
Game2();
break;
case 3:
Game3();
break;
case 4:
Game4();
break;
case 5:
Game5();
break;
}
}while(choice!=6);
return 0;
}