码迷,mamicode.com
首页 > 其他好文 > 详细

作业1提升题

时间:2015-04-03 23:41:35      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

#include <stdlib.h>
#include <stdio.h>
#include <time.h> 
main( )
{
    
    int i;
    int a,b,c,e,g,f,j;
    int k,d,h;
    float u,v;
    char p;
    int count=0;
    srand( (unsigned int)time( NULL ) ); 
    for(i=1;i<31;i++)
    {

       a=rand()%10+1;
       b=rand()%10+1;
       g=rand()%10+1;
       f=rand()%10+1;
       c=rand()%4+1;
       while(f==0||g==0)
       {
               g=rand()%10+1;
            f=rand()%10+1;
       }

       


       if(c==1)
       {
           printf("(%d) %d/%d+%d/%d=\n",i,a,g,b,f);
           if(g==f)
           {
               d=a+b;
               h=f;
           }
           else if(g%f==0)
           {
               d=a+b*(g/f);
               h=g;
           }
           else if(f%g==0)
           {
               d=a*(f/g)+b;
               h=f;
           }
           else
           {
               d=a*f+b*g;
               h=g*f;
           }

       }
       else if(c==2)
       {
           while(a<b)
           {
               a=rand()%10+1;
               b=rand()%10+1;
           }
           printf("(%d) %d/%d-%d/%d=\n",i,a,g,b,f);
           if(g==f)
           {
               d=a-b;
               h=f;
           }
           else if(g%f==0)
           {
               d=a-b*(g/f);
               h=g;
           }
           else if(f%g==0)
           {
               d=a*(f/g)-b;
               h=f;
           }
           else
           {
               d=a*f-b*g;
               h=g*f;
           }
       }
       else if(c==3)
       {
           printf("(%d)( %d/%d)*(%d/%d)=\n",i,a,g,b,f);
           d=a*b;
           h=g*f;
       }
       else
       {
           printf("(%d)(%d/%d)/(%d/%d)=\n",i,a,g,b,f);
           d=a*f;
           h=g*b;

       }

       printf("输入计算答案:");
       scanf("%d%s%d",&e,&p,&j);
       if(h%k==0&&d%k==0)
       {
           h=h/i;
           d=d/i;
       }
       else
       {
           u=(float)e/j;
           v=(float)d/h;
           if(u==v)
           {
               printf("结果正确!\n");
               count=count+1;
           }
           else
           {
               printf("结果不正确!\n");
               
               printf("正确答案为:%d/%d\n",d,h);
           }
       }
    }
    printf("一共答对了:%d道题\n",count);
    if(count==30)
    {
        printf("太棒了!\n");
    }
    else
    {
        printf("请继续努力!\n");
    }
}

技术分享

刚刚开始思考能够识别用户输入的分数的功能时候,真的无从下手%>_<%。但是换个思路想,其实我可以将分子分母拆开来计算,然后定义一个char型来识别用户输入的符号“\”,然后就实现这个功能啦~~我会继续加油的!

作业1提升题

标签:

原文地址:http://www.cnblogs.com/c-19/p/4391184.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!