一、源码
运行环境:Dev C++ 5.11
#include <bits/stdc++.h>
using namespace std;
struct question
{
long long first;
long long second;
}
t[1000001];
int main()
{
long long Min, Max, add, minus, x = time(0) % 100, y = time(0) % 88;
cout << "加法数量:";
cin >> add;
cout << "减法数量:";
cin >> minus;
cout << "MIN:";
cin >> Min;
cout << "MAX:";
cin >> Max;
for (int i = 1; i <= add; i++)
{
srand((time(0) + x + y + i) % 222);
x += rand() % Max;
srand((time(0) + x + add) % 111);
y += rand() % Max;
if (x > Max) x -= Max;
if (y > Max) y -= Max;
while (x + y > Max)
{
x -= rand() % x;
y -= rand() % y;
}
t[i].first = x;
t[i].second = y;
}
for (int i = 1; i <= minus; i++)
{
srand((time(0) + x + y + i) % 222);
x += rand() % Max;
srand((time(0) + x + minus) % 111);
y += rand() % Max;
if (x > Max) x -= Max;
if (y > Max) y -= Max;
t[i + add].first = x;
t[i + add].second = y;
}
freopen("计算题练习.docx", "w", stdout);
cout << Max << "以内";
if (add != 0) cout << "加";
if (minus != 0) cout << "减";
cout << "法练习题" << endl << "姓名:_______________ ";
cout << "试题数量:" << add + minus << " 时间:" << (add + minus) / 4 << "分钟" << endl;
cout << "一、加法计算。(共" << add << "小题)" << endl;
for (int i = 1; i <= add; i++)
cout << i << ". " << t[i].first << " + " << t[i].second << " =( )" << endl;
cout << "二、减法计算。(共" << minus << "小题)" << endl;
for (int i = 1 + add; i <= minus + add; i++)
cout << i << ". " << max(t[i].first, t[i].second) << " - " << min(t[i].first, t[i].second) << " =( )" << endl;
cout << "答案" << endl << "一、加法计算。(共" << add << "小题)" << endl;
for (int i = 1; i <= add; i++)
cout << i << ". " << t[i].first + t[i].second << endl;
cout << "二、减法计算。(共" << minus << "小题)" << endl;
for (int i = 1 + add; i <= minus + add; i++)
cout << i << ". " << max(t[i].first, t[i].second) - min(t[i].first, t[i].second) << endl;
return 0;
}
二、效果展示
输入窗口:
输出文档: