解题思路:

注意事项:

参考代码:

import java.util.Scanner;

public class Dome04 {

   public static void main(String[] args) {
      /*你的弟弟刚做完了“100以内数的加减法”这部分的作业,请你帮他检查一下。每道题目(包括弟弟的答案)的格式为a+b=c或者a-b=c,其中a和b是作业中给出的,均为不超过100的非负整数;c是弟弟算出的答案,可能是不超过200的非负整数,也可能是单个字符"?",表示他不会算。
输入格式
输入文件包含不超过100行,以文件结束符结尾。每行包含一道题目,格式保证符合上述规定,且不包含任何空白字符。输入的所有整数均不含前导0。

输出格式
输出仅一行,包含一个非负整数,即弟弟答对的题目数量。

样例输入
1+2=3
3-1=5
6+7=?
99-0=99
样例输出
2*/
      Scanner scanner = new Scanner(System.in);
      String[] arr = new String[100];
      int number = 0;//答对个数
      int i = 0;
      while (scanner.hasNext()) {
         arr[i++] = scanner.nextLine();
      }
      for (int i1 = 0; i1 < arr.length; i1++) {
         //为空结束
         if (arr[i1]==null)
            break;
         String Symbol = "+";
         int index = arr[i1].indexOf(Symbol);

         String[] blag = new String[3];
         if (index == -1) {
            Symbol = "-";
            index = arr[i1].indexOf(Symbol);
         }

         int cindex = arr[i1].indexOf("=");
         blag[0] = arr[i1].substring(0, index);
         blag[1] = arr[i1].substring(index+1, cindex);
         blag[2] = arr[i1].substring(cindex+1);
         if (Symbol.equals("+"))
            if (("" + (Integer.parseInt(blag[0]) + Integer.parseInt(blag[1]))).equals(blag[2]))
               number++;
         if (Symbol.equals("-"))
            if (("" + (Integer.parseInt(blag[0]) - Integer.parseInt(blag[1]))).equals(blag[2]))
               number++;
      }
      System.out.println(number);

   }
}


点赞(0)
 

0.0分

3 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论