寒双刀310 2021-08-10 21:55 采纳率: 75%
浏览 55
已结题

一道随机一百以内加减乘除,运行时发现错误

#include<stdio.h>
#include<stdlib.h>
int main(void)
{int a,b;char operation;
float Ans,ans;
a=rand()%100;
b=rand()%100;
operation=rand()%4;
printf("%d %d %d %d",operation,a,b,Ans);
switch(operation){
case'0':{
printf("请计算%d+%d=?",a,b);
Ans=a+b;}
break;
case'1':{
printf("请计算%d-%d=?",a,b);
Ans=a-b;}
break;
case'2':{
printf("请计算%d*%d=?",a,b);
Ans=a*b;}
break;
case'3':{
printf("请计算%d/%d=?",a,b);
Ans=a/b;}
break;
default:
printf("NULL");
break;
}
scanf("%f",&ans);
if(ans==Ans)
printf("恭喜,回答正确");
else printf("回答错误");
return 0;
}

  • 写回答

6条回答 默认 最新

  • qzjhjxj 2021-08-10 22:17
    关注

    修改如下,供参考:

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main(void)
    {
        int  a,b;
        int  operation;
        float Ans,ans;
        srand((unsigned int)time(NULL));
        a=rand()%100;
        b=rand()%100;
        operation=rand()%4;
        printf("%d %d %d\n",operation,a,b);
        switch(operation){
                          case 0:{
                                  printf("请计算%d+%d=? ",a,b);
                                  Ans=(float)a+b;
                                  }
                                  break;
                          case 1:{
                                  printf("请计算%d-%d=? ",a,b);
                                  Ans=(float)a-b;
                                  }
                                  break;
                          case 2:{
                                  printf("请计算%d*%d=? ",a,b);
                                  Ans=(float)a*b;
                                  }
                                  break;
                          case 3:{
                                  printf("请计算%d/%d=? ",a,b);
                                  Ans=(float)a/b;
                                  }
                                  break;
                          default:
                                  printf("NULL");
                                  break;
        }
        scanf("%f",&ans);
        if(ans==Ans)
             printf("恭喜,回答正确\n");
        else printf("回答错误\n");
        
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 8月18日
  • 已采纳回答 8月10日
  • 创建了问题 8月10日

悬赏问题

  • ¥35 引用csv数据文件(4列1800行),通过高斯-赛德尔法拟合曲线,在选取(每五十点取1点)数据,求该数据点的曲率中心。
  • ¥20 程序只发送0X01,串口助手显示不正确,配置看了没有问题115200-8-1-no,如何解决?
  • ¥15 Google speech command 数据集获取
  • ¥15 vue3+element-plus页面崩溃
  • ¥15 像这种代码要怎么跑起来?
  • ¥15 怎么改成循环输入删除(语言-c语言)
  • ¥15 安卓C读取/dev/fastpipe屏幕像素数据
  • ¥15 pyqt5tools安装失败
  • ¥15 mmdetection
  • ¥15 nginx代理报502的错误