zoukankan      html  css  js  c++  java
  • 简单四则运算

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    #include<string.h>
    main()
    {
        int i,j,k,e,d,d1,e1,l;
        int a,b,c;
        int q=0,w=0,q1=0,w1=0;
        float sum;
        srand((int)time(0));
        do{
            a=rand()%100+1;
            b=rand()%100+1;
            k=rand()%4+1;
            c=max(a,b);
            a=min(a,b);
            switch(k){
            case 1:printf("%d*%d=",c,a);d=c*a;    break;
            case 2:
                {
                    printf("%d/%d=",a,c);
                    (float)d=(float)a/(float)c;    
                    for(i=1;i<=c;i++)
                        for(j=1;j<=a;j++)
                        {
                            (float)l=(float)j/(float)i;
                            if(l==d)
                            {
                                c=i;
                                a=j;
                                break;
                            }
                        }
                    break;
                }
            case 3:printf("%d+%d=",c,a);d=c+a;    break;    
            case 4:printf("%d-%d=",c,a);d=c-a;  break;
            }
            if(k==2)
            {
                scanf("%d/%d",&e,&e1);
                (float)d1=(float)e/(float)e1;
                if(e==a&&e1==c)
                {
                    printf("回答正确!\n\n");
                    q++;
                }
                else
                {
                    printf("回答错误!\n\n");
                    w++;
                }
            }
            if(k!=2)
            {
                scanf("%d",&e);
                if(e==d)
                {
                    printf("回答正确!\n\n");
                    q1++;
                }
                else
                {
                    printf("回答错误!\n\n");
                    w1++;
                }
            }
        }while(e!=-1);
        sum=((float)(q+q1)/(float)(q+q1+w+w1-1))*100;
        printf("此次答题正确率为 %.2f%%\n",sum);
    }

    关于小数的与整数的没有什么大的出入,基本就是重复一遍,暂时没有想到更好的办法

    这次的程序的时间最主要是消耗在产生不同在运行结果,导致程序在效率不是很高。

    最后是在网上找到了关于随时间变化的类,解决了程序运行结果单一的问题,大大提高了程序的实用性。

    对于真分数只做出了分数的最简约分。

  • 相关阅读:
    记下mongoose(转载)
    vue vue-cli中引入全局less变量的方式
    单标签不支持 伪元素
    删除tppabs,href="javascript:if(confirm)...",、/*tpa=http://...
    系统字体放大导致rem布局错乱,解决方案,已通过测试
    IE条件注释
    hbase部署经验与坑总结
    ubuntu安装mysql 5.7
    静态代理和动态代理
    单例模式
  • 原文地址:https://www.cnblogs.com/esom/p/4367064.html
Copyright © 2011-2022 走看看