zoukankan      html  css  js  c++  java
  • 练习一 第一题

    #include<stdio.h>//定义包含文件类型
    #include<stdlib.h>
    #include<time.h>
    int num=0,num1=0;//定义整形变量
    int m[1000][100];
    char oper[4]={'+','-','*','/'};//输入运算符
    int main()//主函数
    {
    int a,b,c,d,e,flag,i,j;//flag变量
    for(i=1;i<=1000;++i)
    for(j=1;j<=i;++j)
    if(i%j==0)
    m[i][m[i][0]++]=j;
    srand(time(0));//设置随机数的种子,否则每次运行得到的随机数都是一样的
    while(1)//while(1)其中1代表一个常量表达式,它永远不会等于0
    {
    system("cls");//清屏
    printf("当前答题数:%d 正确数:%d 正确率:%.2lf%% ",num,num1,num?num1*1.0/num*100:0);
    flag=0;
    c=rand()%4;//是产生随机数的一个随机函数 每次运行能产生不同的数字
    while(1)
    {
    flag=0;//接收到数据
    if(c<3)
    {
    a=rand()%1000;b=rand()%1000;//产生一个1-1000的随机数
    }
    else
    {
    a=rand()%1000;
    b=rand()%m[a][0];
    b=m[a][b];//定义一个元素为a或b的m为b大概是这样
    }
    switch(c)//输入c值
    {
    case 0:
    if(a+b<=1000)
    flag=1,d=a+b;
    break;
    case 1:
    if(a>=b)
    flag=1,d=a-b;
    break;
    case 2:
    if(a*b<=1000)
    flag=1,d=a*b;
    break;
    case 3:
    if(a%b==0)//%求余运算符
    flag=1,d=a/b;
    break;
    }
    if(flag)
    break;
    }
    printf("%d%c%d=? ",a,oper[c],b);
    num++;//先引用num的值,然后在num用完后,再进行自加。。为单目运算符,只有一个操作数。其含义为变量自加一 后自加
            scanf("%d",&e);
            if(e==d)
    {
    printf("恭喜你回答正确! ");
    num1++;
    }
    else
    {
    printf("很遗憾,回答错误,正确答案是%d ",d);
    }
    system("pause");//从程序里调用“pause”命令 继续进行运算
    }
    }







    调试:发现一个error错误 ,经查找得知是缺少了一个符号“:”
    再次调试没有错误,进行计算:

  • 相关阅读:
    sql语句性能优化
    Windows版Redis如何使用?(单机)
    redis在项目中的使用(单机版、集群版)
    在windows上搭建redis集群(redis-cluster)
    Jenkins打包Maven项目
    numpy交换列
    Linq中join多字段匹配
    SpringMVC Web项目升级为Springboot项目(二)
    SpringMVC Web项目升级为Springboot项目(一)
    springboot读取application.properties中自定义配置
  • 原文地址:https://www.cnblogs.com/zzsmile/p/8545369.html
Copyright © 2011-2022 走看看