zoukankan      html  css  js  c++  java
  • 电脑四则运算出题

    本次作业是编写一个自动出四则运算的题的编程题目,拿道题后思考了很久,数字随机产生很简单,但如何去随机加减乘除。经过思考和查阅资料决定运用switch的选择结构,来选择出题的加减乘除。还有一个问题,在选择c语言编写的环境下,随机函数与java中并不一样,java中直接用random=new random()便可,可是在C中需要在头文件中加入#include<time.h>的头文件,并且需要加入这行代码,srand(time(0)); a=rand()%100+1;这是随机产生100以内的随机数。随后不断根据老师的要求改编代码,最终完成如下算法:

     1 #include"stdio.h"
     2 #include"stdlib.h"
     3 #include<time.h>
     4 int main(){
     5 int i,a,b,c,d,e; 
     6 printf("请输入要出的题数:");
     7 scanf("%d",&i); 
     8 srand(time(0));
     9 for(int j=0;j<i;j++)
    10     {
    11         a=rand()%100+1;
    12         b=rand()%100+1;
    13         d=rand()%100+1;
    14         e=rand()%100+1; 
    15         c=rand()%8;
    16         if(a<=b){
    17            
    18             switch(c){
    19                 case 0:printf("%d+%d=
    ",a,b);break;
    20                 case 1:printf("%d-%d=
    ",b,a);break;
    21                 case 2:printf("%d×%d=
    ",a,b);break;
    22                 case 3:printf("%d÷%d=
    ",a,b);break;
    23                  
    24                 case 4:{ 
    25                        if(d<=e) printf("%d/%d+%d/%d=
    ",a,b,d,e);
    26                        else printf("%d/%d+%d/%d=
    ",a,b,e,d);    
    27                 }break;
    28                 case 5:{ 
    29                        if(d<=e) printf("%d/%d-%d/%d=
    ",a,b,d,e);
    30                        else printf("%d/%d-%d/%d=
    ",a,b,e,d);    
    31                 }break;
    32                 case 6:{ 
    33                        if(d<=e) printf("%d/%d×%d/%d=
    ",a,b,d,e);
    34                        else printf("%d/%d×%d/%d=
    ",a,b,e,d);    
    35                 }break;
    36                 case 7:{ 
    37                        if(d<=e) printf("%d/%d÷%d/%d=
    ",a,b,d,e);
    38                        else printf("%d/%d÷%d/%d=
    ",a,b,e,d);    
    39                 }break;
    40             }
    41             }
    42             else{
    43                 switch(c){
    44                 case 0:printf("%d+%d=
    ",a,b);break;
    45                 case 1:printf("%d-%d=
    ",a,b);break;
    46                 case 2:printf("%d×%d=
    ",a,b);break;
    47                 case 3:printf("%d÷%d=
    ",b,a);break;
    48                  
    49                 case 4:{ 
    50                        if(d<=e) printf("%d/%d+%d/%d=
    ",b,a,d,e);
    51                        else printf("%d/%d+%d/%d=
    ",b,a,e,d);    
    52                 }break;
    53                 case 5:{ 
    54                        if(d<=e) printf("%d/%d-%d/%d=
    ",b,a,d,e);
    55                        else printf("%d/%d-%d/%d=
    ",b,a,e,d);    
    56                 }break;
    57                 case 6:{ 
    58                        if(d<=e) printf("%d/%d×%d/%d=
    ",b,a,d,e);
    59                        else printf("%d/%d×%d/%d=
    ",b,a,e,d);    
    60                 }break;
    61                 case 7:{ 
    62                        if(d<=e) printf("%d/%d÷%d/%d=
    ",b,a,d,e);
    63                        else printf("%d/%d÷%d/%d=
    ",b,a,e,d);    
    64                 }break;
    65             }
    66             } 
    67     }
    68 }

    题目演示为:

    编写完这个题目收获很多,任何程序都需要一次次的修改,不会在第一遍就能完美完成。一步一个脚印,最好!

  • 相关阅读:
    服务器状态码
    QuerySet中添加Extra进行SQL查询
    django配置一个网站建设
    MySQL数据库查询中的特殊命令
    125. Valid Palindrome
    121. Best Time to Buy and Sell Stock
    117. Populating Next Right Pointers in Each Node II
    98. Validate Binary Search Tree
    91. Decode Ways
    90. Subsets II
  • 原文地址:https://www.cnblogs.com/zzkmark/p/5265379.html
Copyright © 2011-2022 走看看