java——随机口算题(加减乘除随机)

java——随机口算题(加减乘除随机)


import java.util.Scanner;
public class  jisuan
{
 static int wrongnumber=0;
 public static void main(String[] args)
{ 
  for(int i=0;i<5;i++)
  {
   System.out.print((i+1)+"."+ "");
   int a=(int)(System.currentTimeMillis()%4);
   switch(a){
   case 0:add(a);break;
   case 1:jian(a);break;
   case 2:cheng(a);break;
   case 3:chu(a);break;
   }
  }
  System.out.println("wrongnumber is "+wrongnumber);
 }
 public static void add(int a)
 {
   int number1=(int)( System.currentTimeMillis()*3%1000);
   int number2=(int)( System.currentTimeMillis()*7%1000);
   int answer;
   Scanner input=new Scanner(System.in);
   System.out.print(number1+"+"+number2+" = ");
   do
   {
    answer=input.nextInt(); 
    if(number1+number2==answer)
     System.out.println((char)8730);
    if(!(number1+number2==answer))
    {
     wrongnumber++;
     System.out.println(number1+"+"+number2+"="+answer+" is "+(number1+number2==answer));
     System.out.print("please input your answer again : ");
    }
   }while(!(number1+number2==answer));
 }
 public static void jian(int a) 
 {
    int answer;
    int number1=(int)( System.currentTimeMillis()*3%1000);
    int number2=(int)( System.currentTimeMillis()*7%1000);
    if(number1<number2)
    {
     number1=number1^number2;
     number2=number1^number2;
     number1=number1^number2;
    }
    Scanner input=new Scanner(System.in);
    System.out.print(number1+"-"+number2+" = ");
    do {
     answer=input.nextInt();
     if(number1-number2==answer)
      System.out.println((char)8730);
     if(!(number1-number2==answer))
     {
      wrongnumber++;
      System.out.println(number1+"-"+number2+"="+answer+" is "+(number1-number2==answer));
      System.out.print("please input your answer again : ");
     } 
    }while(!(number1-number2==answer));
 }
 public static void cheng(int a) 
 {
   int answer;
   int number1=(int)( System.currentTimeMillis()%100);
   int number2=(int)( System.currentTimeMillis()*7%100);
   Scanner input=new Scanner(System.in);
   System.out.print(number1+"*"+number2+" = ");
   do{
    answer=input.nextInt();
    if(number1*number2==answer)
     System.out.println((char)8730);
    if(!(number1*number2==answer))
    {
     wrongnumber++;
     System.out.println(number1+"*"+number2+"="+answer+" is "+(number1*number2==answer));
     System.out.print("please input your answer again : ");
    }
   }while(!(number1*number2==answer));
 }
 public static void chu(int a)
 {
   int shang,yushu;
   int number1=(int)( System.currentTimeMillis()%1000);
   int number2=(int)( System.currentTimeMillis()*7%100);
   if(number1<number2)
   {
    number1=number1^number2;
    number2=number1^number2;
    number1=number1^number2;
   }
   Scanner input=new Scanner(System.in);
   System.out.print(+number1+"/"+number2+" = ");
   do {
   shang=input.nextInt();
   yushu=input.nextInt();
   if(!(number1/number2==shang&&number1%number2==yushu))
    {
     wrongnumber++;
     System.out.println(number1+"/"+number2+"="+shang+"……" +yushu+" is "+(number1/number2==shang&&number1%number2==yushu));
     System.out.print("please input your answer again : ");
    }
   else
     System.out.println((char)8730);
   }while(!(number1/number2==shang&&number1%number2==yushu));
 }
}
在C语言中,你可以使用`<stdio.h>`库中的`srand()`和`rand()`函数来实现随机生成,并结合简单的条件判断来创建加减乘除算练习代码。下面是一个基本示例: ```c #include <stdio.h> #include <stdlib.h> // 包含rand()函数 // 生成1到10之间的随机整数 int random_number(int min, int max) { return min + rand() % (max - min + 1); } int main() { srand(time(0)); // 设置随机数种子,保证每次程序运行结果不同 for (int i = 0; i < 10; i++) { // 可调整次数 int operator = rand() % 4; // 0代表加法,1代表减法,2代表乘法,3代表除法 int a = random_number(1, 10); // 随机生成两个操作数 int b = random_number(1, 10); switch (operator) { case 0: printf("请计算 %d + %d = ", a, b); break; case 1: printf("请计算 %d - %d = ", a, b); break; case 2: printf("请计算 %d * %d = ", a, b); break; case 3: if (b == 0) { printf("错误!除数不能为0。\n"); continue; // 如果除数为0,跳过本次循环 } printf("请计算 %d / %d = ", a, b); break; } // 用户输入解题结果 int result; scanf("%d", &result); // 检查并给出反馈 if (operator == 0 && result == a + b) { printf("正确!\n"); } else if (operator == 1 && result == a - b) { printf("正确!\n"); } else if (operator == 2 && result == a * b) { printf("正确!\n"); } else if (operator == 3 && a % b == result) { printf("正确!\n"); } else { printf("错误!正确答案应该是 %d。\n", (a + (operator == 1 ? -b : b)) / (operator == 3 ? 1 : b)); } } return 0; } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值