《程序设计实践》题目:小学生四则运算练习程序
学校:
学院:
班级:
学号:
姓名:_
2014 年11月24 日
实践基础程序设计实践
一、实践目的
1、掌握基本输入输出。
2、掌握方法定义与调用,理解参数传递方式。
二、实践要求
利用方法、数组、基本输入输出等Java基础知识,给出所选项目的基本设计与实现。
三、项目需求
所选项目名称:小学生四则运算练习程序
实现对小学生简单加法、减法、乘法、除法的四则运算练习。
要求通过键盘输入两个运算数,并回显输入数,将运算结果输出。
四、项目设计方案
Test类:
数据域:sum,总分数。
方法:core()负责随机生成题目,并对其打上分数。
main(String[] args)是程序的入口,负责程序的开始。
五、核心算法详细设计
1.public static void main(String[] args) {
Test t = new Test();
// 提示用户考试信息
System.out.println("本次测试共十道题,每题十分,满分一百分");
// 将分数sum初始化为0;
t.sum = 0;
// 创建一个随机类
Random r = new Random();
// 进行10个循环,对应着10道题
for (int i = 0; i < 10; i++) {
t.core();
}
//打印出考试成绩
System.out.println(" 考试结束");
System.out.println(" 您的总分为" + t.sum);
}
2.//考试的题目。
private void core() {
//产生一个随即生成器
Random r = new Random();
//产生一个在0,1,-1之中的数
int m, n;
m = r.nextInt() % 10;
n = m % 2;
六、完整源码
package test;
import java.util.Random;
import java.util.Scanner;
public class Test {
int sum;
public static void main(String[] args) {
Test t = new Test();
// 提示用户考试信息
System.out.println("本次测试共十道题,每题十分,满分一百分");
// 将分数sum初始化为0;
t.sum = 0;
// 创建一个随机类
Random r = new Random();
// 进行10个循环,对应着10道题
for (int i = 0; i < 10; i++) {
t.core();
}
//打印出考试成绩
System.out.println(" 考试结束");
System.out.println(" 您的总分为" + t.sum);
}
//考试的题目。
private void core() {
//产生一个随即生成器
Random r = new Random();
//产生一个在0,1,-1之中的数
int m, n;
m = r.nextInt() % 10;
n = m % 2;
switch (n) {
//如果n为-1,则进行加法运算
case -1:
int a,b,c;
//a为操作数,b为被操作数,都是10以内的数字。
a = r.nextInt() % 10;
b = r.nextInt() % 10;
//给出运算式,让用户输入答案
System.out.println(a + "+" + "(" + b + ")=?");
Scanner x = new Scanner(System.in);
c = x.nextInt();
//判断用户的答案正确与否,若正确则加10分,错误就只提示错误
if (c != a + b)
System.out.println("回答错误");
else {
System.out.println(" 回答正确");
sum = sum + 10;
}
break;
//如果n为0,则进行乘法运算
case 0:
int q,w,e;
//q为操作数,w为被操作数,都是10以内的数字。
q = r.nextInt() % 10;
w = r.nextInt() % 10;
//给出运算式,让用户输入答案
System.out.println(q + "*" + "(" + w + ")" + "=?");
Scanner y = new Scanner(System.in);
e = y.nextInt();
//判断用户的答案正确与否,若正确则加10分,错误就只提示错误
if (e != q * w)
System.out.println("回答错误");
else {
System.out.println(" 回答正确");
sum = sum + 10;
}
break;
//如果n为1,则进行除法运算
case 1:
double j,k,l;
//j为操作数,k为被操作数,都是10以内的数字。
j = r.nextInt() % 10;
k = r.nextInt() % 10;
//k作为被除数不能为0
if (k == 0)
k++;
//给出运算式,让用户输入答案
System.out.println(j + "/" + "(" + k + ")" + "=?");
Scanner z = new Scanner(System.in);
l = z.nextDouble();
//判断用户的答案正确与否,若正确则加10分,错误就只提示错误
if (l != (j / k) / 1.00)
System.out.println("回答错误");
else {
System.out.println(" 回答正确");
sum = sum + 10;
}
break;
}
}
}
七、使用说明与运行结果截图
1.运行程序,出现提示页面,弹出第一个题目
2.
2.输入结果“-1”,单击回车,提示回答正确,弹出下一题
3.输入结果“-5”,单击回车,提示正确,弹出下一题
4.输入错误答案“53”,提示错误
5.输入结果“7”,单击回车,弹出下一题。
6.继续做题,直到完成10道计算,在此不一一阐述
7. 当10道题目做完结束后,显示最终成绩
八、实践总结
本次实践是第一次实践,自己的基本功不扎实就更要努力了,老师说了这个学期的实践对于自己的动手能力和以后的学习都很有帮助,所以我也下定决心好好学,这个程序自己打的很累,其中张昊给了我很大的帮助,结果还算满意,不过还有不足,也希望自己能够在今后越做越好,能够提高自己,也希望老师能更加督促我,成绩能有一个大的进步。
[此文档可自行编辑修改,如有侵权请告知删除,感谢您的支持,我们会努力把内容做得更好]。