zoukankan      html  css  js  c++  java
  • 结对项目进展

    目前对代码进行了些改动,将程序进行了一些封装,优化了一点代码。

    由于之前的要求有所改动,先前是将题目从txt中读取,现在改成自动生成算式,存入txt中再进行读操作。

    void create(){

        srand((unsigned) time(NULL));
        int len;
        int operate;
        int op0,op1,op2;
        int exibrac,brac1,brac2;
        char op;
        do{
            len = rand() % 11;
        }while(len<=2);
             
        exibrac = rand() % 2;//0不存在,1存在括号
        brac1 = rand() % (len-1);
        FILE *fp = fopen("test.txt","w+");
        operate = len-1;
        op1 = rand() % 100;
        op0 = rand() % 2;
     
        if(len-operate==brac1 && exibrac == 1){
            op = '(';
            fprintf(fp , "%c" , op );
            brac2 = brac1 + 1 + rand() % (len-brac1-1);
        }
        if(op0==0){
            fprintf(fp , "%d" ,op1);
        }
        else
        {
            fprintf(fp , "%d" ,op1);
            op='|';
            fprintf(fp , "%c" ,op);
            op1 = 2 + rand() % 98;
            fprintf(fp , "%d" ,op1);
        }
        while(operate>0){
            op2=rand() % 4;
            switch(op2){
            case 0:
                op = '+';
                break;
            case 1:
                op = '-';
                break;
            case 2:
                op = '*';
                break;
            case 3:
                op = '/';
                break;
            }
            operate--;
            fprintf(fp , "%c" , op );
     
            if(len-operate==brac1 && exibrac == 1){
                op = '(';
                fprintf(fp , "%c" , op );
                brac2 = brac1 + 1 + rand() % (len-brac1-1);
            }
    //1+(2+3+4
            op1 = rand() % 100;
            op0 = rand() % 2;
            if(op0==0){
                fprintf(fp , "%d" ,op1);
            }
            else
            {
                fprintf(fp , "%d" ,op1);
                op='|';
                fprintf(fp , "%c" ,op);
                op1 = 2 + rand() % 98;
                fprintf(fp , "%d" ,op1);
            }
            if(len-operate==brac2){
                op = ')';
                fprintf(fp , "%c" , op );
            }
        }
        fclose(fp);
    }
  • 相关阅读:
    windbg javascript脚本--将内存内容保存到文件
    js补全前置零
    javascript打印对象(object)
    c++ primer学习指导(23)--4.2算术运算符
    c++ primer学习指导(22)--3.2.1直接初始化和拷贝初始化
    c++ primer学习指导(21)--2.2.4名字的作用域
    c++ primer学习指导(19)--2.1.2类型转换
    c++ primer学习指导(18)-- 2.1.1算术类型
    搭建sock5代理
    Centos 6 yum源
  • 原文地址:https://www.cnblogs.com/13070037Yu/p/5348026.html
Copyright © 2011-2022 走看看