GIT地址 | https://github.com/simple5960/simple |
---|---|
GIT用户名 | simple5960 |
学号后5位 | 82129 |
作业链接 |
项目背景:
阿超家里的孩子上小学一年级了,这个暑假老师给家长们布置了一个作业:家长每天要给孩子出一些合理的,但要有些难度的四则运算题目,并且家长要对孩子的作业打分记录。作为程序员的阿超心想,做一个可以自动生成小学四则运算题目与解决题目的命令行 “软件”呢。
软件的需求:程序接收一个命令行参数 n,然后随机产生 n 道加减乘除(分别使用符号+-*/来表示)练习题,每个数字在 0 和 100 之间,运算符在 2 个 到 3 个之间。不能出现 3÷5+2=2.6 这样的算式。
练习题生成好后,将生成的 n 道练习题及其对应的正确答案输出到一个文件 subject.txt 中。
项目的完成过程
1.配置环境
安装能进行编码,单元测试,效能分析等功能的工具VS2017 安装成功后,首次使用 VS 2017 还需要对其进行简单的配置,包括开发环境的主题风格。这里开发设置选择 C++即可,主题推荐深色主题。 百度网盘:链接: https://pan.baidu.com/s/1jJXyRMA 密码: ub6c
配置环境问题:
由于 VS 本身体积较大,推荐修改存储位置,将其安装在非系统盘目录。
2.克隆项目 从班级要求仓库地址Fork到自己GitHub的仓库中
安装将仓库内容拷贝到本地的工具Git
Git-windows版本下载地址:点击此处
下载安装完成后,新建一个文件夹来保存仓库中的文件,打开文件夹,在文件夹空白区域点击右键,选择Git Bash Here,输入git clone + 仓库的地址,可以直接复制下来,只能通过右键然后paste进行粘贴,输入完成后按回车就可以了
在完成上述操作后,可在当前目录下看到一个与仓库同名的文件夹Calculator ,这就是克隆到本地的项目。 注意,默认克隆的分支是 java,请使用 git checkout cplusplus 命令切换到 C++ 项目。 进入项目文件夹,新建一个文件夹,重命名为你的 Github 账号名。
因为git checkout 出现了一些问题 ,暂时用别人转换而来的软件。但是自己已在其他人的电脑上实现git checkout cplusplus.
配置过程
下载Visual Stdio 是一件很痛苦的过程,因为网速很慢,要下很久,后面用EDU下好了,但是又出现了很多问题。问了很多人都无法解决,所以索性不用VS写了,用VC6.0写的代码。
代码设计
我写的代码很少,思路就是随机生成0-100的数,每生成一个数就加上一个运算符,用随机生成的0-10的数控制运算符个数,在控制题目个数。具体代码如下
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
//元素进栈
int push(int* a,int top){
a[++top]=rand()%100;
return top;
}
//数据元素出栈
int pop(int * a,int top){
/*if (top==-1) {
printf("空栈");
return -1;
}*/
printf("%d ",a[top]);
top--;
return top;
}
int main() {
srand((unsigned)time(NULL));
int a[100];
int i;
char answear;
char str[6]={'+','-','*','/','\0'};
char *p=str;
int top=-1;
for(i=0;i<50;i++)
{
top=push(a, top);
}
printf("Do ypu want to make more progress?\n");
while(1){
scanf("%c",&answear);
if(answear=='y'||answear=='Y')
{
for(i=0;i<5;i++)
{
top=pop(a, top);
printf("%c",*(p+i));
}
}
}
return 0;
}
运行结果如下图
克隆项目及提交代码
项目克隆都是按照作业链接上做的
代码提交遇到了很多问题