zoukankan      html  css  js  c++  java
  • 第二次课加减乘除运算

    第一阶 正常循环随机输出三十个式子

    #include<stdio.h>
    #include<stdlib.h>
    char x[4]={'+','-','*','/'};
    
    int main()
    {
        int a,b,c;
        srand((unsigned)time(NULL));
        for(int i=0;i<30;i++)
        {
            printf("%d.",i+1);
    
            a = rand()%100;
            printf("%d",a);
    
            b = rand()%4;
            printf("%c",x[b]);
    
            c = rand()%100;
            printf("%d
    ",c);
        }
    }
    

      

    第二阶 在第一阶的基础上添加查重功能

    #include<stdio.h>
    #include<stdlib.h>
    char x[4]={'+','-','*','/'};
    int aa[30];
    int bb[30];
    int cc[30];
    
    int main()
    {
        int t=1;
        srand((unsigned)time(NULL));
        
        for(int i=0;i<30;i++)
        {
            aa[i] = rand()%100;
            bb[i] = rand()%4;
            cc[i] = rand()%100;
    
            for(int j=0;j<i;j++)
            {
                if(aa[i]==aa[j]&&bb[i]==bb[j]&&cc[i]==cc[j])
                {
                    i--;
                    t=0;
                }
            }
            if(t) printf("%d.%d%c%d
    ",i+1,aa[i],x[bb[i]],cc[i]);
            else t=1;
        }
    }
    

      

    第三阶 在第二阶的基础上添加判断是否有括号、是否有乘除等功能

    #include<stdio.h>
    #include<stdlib.h>
    
    char x[4]={'+','-','*','/'};
    int a[10][1000];
    int b[9];
    
    
    int main()
    {
        int t=1,same=0;
        int coc,f,y,n,w=2,cz,kh,fw=100;
        srand((unsigned)time(NULL));
        printf("number? ");
        scanf("%d",&n);
    
        printf("Have '*'and'/'?(1 or 0) ");
        scanf("%d",&coc);
        if(coc) w=4;
    
        printf("cao zuo ge shu ");
        scanf("%d",&cz);
    
        printf("kuo hao ");
        scanf("%d",&kh);
    
        printf("fan wei ");
        scanf("%d",&fw);
    
        for(int i=0;i<n;i++)
        {
            for(int k=0;k<cz;k++)
            {
                a[k][i] = rand()%fw;
            }
            for(int k=0;k<cz-1;k++)
            {
                b[k] = rand()%w;
            }
    
            for(int j=0;j<i;j++)
            {
                for(int k=0;k<cz;k++)
                {
                    if(a[k][j]==a[k][i]) same++;
                }
                if(same==cz*2-1)
                {
                    i--;
                    t=0;
                }
            }
            if(t)
            {
                printf("%d.",i+1);
                int n=0,m ;
                for(int k=0;k<cz-1;k++)
                {
                    if(!n&&k<cz-2) m=rand()%2;
                    if(m) {printf("(");n=1;}
                    printf("%d",a[k][i]);
                    if(!m&&n) {printf(")");n=0;}
                    m=0;
                    printf("%c",x[b[k]]);
                }
                printf("%d
    ",a[cz-1][i]);
            }
            else t=1;
        }
    }
    

      

  • 相关阅读:
    struct{} //长篇更新
    channel //长篇更新
    切片 //长篇更新
    引用
    核心:数据篇
    ARM指令解析
    arm寄存器解析
    Java-Selenium,获取下拉框中的每个选项的值,并随机选择某个选项
    log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
    eclipse安装springsource-tool-suite遇到的问题及解决方案
  • 原文地址:https://www.cnblogs.com/linmob/p/13752008.html
Copyright © 2011-2022 走看看