作业二--四则运算

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int add(int num1,int num2)
{
 return num1+num2;
}
int subtraction(int num1,int num2)
{
 return num1-num2;
}
int mul(int num1,int num2)
{
 return num1*num2;
}
float divis(int num1,int num2)
{
 return ((int)(((float)num1/num2)*100+0.5))/100.0;
}
int main()
{
 int type = -1;
 int data = -1;
 int choice,num1,num2,results;
 float div_result;
 char ch;
 int i,j,num3,num4;
 printf("请输入四则运算题目的数量:\n");
 scanf("%d",&j);
 srand((unsigned int)time(NULL));
 for(i=0;i<j;i++){
     num3=rand()%100+1;
     num4=rand()%100+1;
       choice=rand()%8;
  switch (choice)
  {
  case 1:
    num1 = rand()%100+1;
    num2 = rand()%100+1;
    printf("%d+%d=\n",num1,num2);
   break;
  case 2:
    num1 = rand()%100+1;
    num2 = rand()%100+1;
    printf("%d-%d=\n",num1,num2);
   break;
  case 3:
    num1 = rand()%10;
    num2 = rand()%10;
    printf("%d*%d=\n",num1,num2);
   break;
  case 4:
    num1 = rand()%10;
    num2 = rand()%10+1;
    printf("%d/%d=\n",num1,num2);
   break;
    case 5:
    num1 = rand()%100+1;
    num2 = rand()%100+1;
    printf("%d/%d+%d/%d=\n",num1,num3,num2,num4);
   break;
  case 6:
    num1 = rand()%100+1;
    num2 = rand()%100+1;
    printf("%d/%d-%d/%d=\n",num1,num3,num2,num4);
   break;
  case 7:
    num1 = rand()%10;
    num2 = rand()%10;
    printf("%d/%d*%d/%d=\n",num1,num3,num2,num4);
   break;
  case 8:
    num1 = rand()%10;
    num2 = rand()%10+1;
    printf("%d/%d/%d/%d=\n",num1,num3,num2,num4);
   break;
  }
}
}

1. 编写一个能自动生成小学四则运算题目的程序。

  • 题目:自动生成四则运算题目
  • 主要功能:
    • 除了整数以外,还能支持真分数的四则运算。
    • 对实现的功能进行描述,并且对实现结果要求截图
  • 设计思想:使用c-free的随机函数rand,之后利用switch语句实现一个简单的四则运算的符号选择。

总结:老师和同学们都说这次作业特别简单,但是在做的过程中,我还是遇到了很多问题。说明c语言的基础还有待提高,在接下来的时间要加强学习。

时间: 2024-08-29 06:27:35

作业二--四则运算的相关文章

day1作业二:多级菜单

    作业二:多级菜单 1.三级菜单 2.可以次选择进入各子菜单 3.所需新知识点:列表.字典 4.打印b回到上一层 5.打印q退出循环 流程图如下: readme: (1)存储三级菜单的字典;设置标识符active用来循环: (2)生成存储省市的字典,d1 = {1: '河南', 2: '广东', 3: '湖南'}; (3)用户输入查询编码,如果用户输入q退出循环:如果用户输入小于1或大于3则重新输入:输入编码在range(1,4)中,则输出省,并继续循环; (4)生成存储市的字典d2 =

day1作业二:多级菜单操作(函数实现)

作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入back返回上一层,输入quit退出整个程序 本示例的三级菜单是一个yaml文件格式,格式如下: 香港: 香港 澳门: 澳门 台湾: 台湾 钓鱼岛: 钓鱼岛 北京市: - 市辖区 - 东城区 - 西城区 - 崇文区 - 宣武区 - 朝阳区 河北省: - 石家庄市: - 长安区 - 桥东区 - 桥西区 - 新华区 - 唐山市: - 路南区 - 路北区 - 古冶区 - 开平区 - 秦皇岛市: -

机器学习 1 linear regression 作业(二)

机器学习 1 linear regression 作业(二) 这个线性回归的作业需要上传到https://inclass.kaggle.com/c/ml2016-pm2-5-prediction 上面,这是一个kaggle比赛的网站.第一次接触听说这个东西,恰好在京东上有一本刚出来的关于这个的书<Python机器学习及实践:从零开始通往Kaggle竞赛之路>.把我自己写的代码运行保存的结果提交上去后发现,损失函数值很大,baseline是6,而我的却是8,于是很不心甘,尝试了其他方法无果后,准

第二次作业: 二维数组

高级语言程序设计报告   实习题目 第二次作业: 二维数组 P228计算机双学位第8章实验题:学生成绩管理系统 l 在上次作业的基础上,改为每学生2门课,用二维数组编程实现相应功能,相应功能所有涉及分数的均需可以处理每门课程分数及每个学生课程总分. l 涉及到排序的,均需提供冒泡及选择两种排序方法,可增加菜单项. l 功能5中按学号查询学生排名及成绩,要求用折半法,为此你的学生数据可以多一点. l 数组中可以事先有数据(省却每次输入数据浪费时间),为此输入数据菜单可以改造为增加数据菜单. l 在

家庭作业二

家庭作业二(Chapter 3) P206 3.60 考虑下面的源代码,这里R,S,T都是用#define声明的常数 int A[R][S][T]; int store_ele(int i,int j,int k,int *dest) { *dest=A[i][j][k]; return sizeof(A); } 编译这个程序,GCC产生下面的汇编代码:(i at %ebp+8,j at %ebp+12,k at %ebp+16,dest at %ebp+20) movl 8(%ebp),%ec

作业5 四则运算 测试与封装 5.2

作业5 四则运算 测试与封装  5.2 开发环境:   Eclipse 开发人员:   欧其锋(201306114305) 余汉城(201306114317)(http://www.cnblogs.com/yuhancheng/) 分工:   欧其锋:异常处理 余汉城:重构 源代码: 1 package GongNengpk; 2 3 import GongNengpkTest.ChuShuLingException; 4 import GongNengpkTest.JCException; 5

機器學習基石(Machine Learning Foundations) 机器学习基石 作业二 课后习题解答

大家好,我是Mac Jiang,首先祝贺大家清明节快乐!作为一名苦逼的程序员,博主只能窝在实验室玩玩游戏,顺便趁着大早上没人发一篇微博.不过还是祝各位出行的兄弟玩的开心! 今天和大家分享coursera-NTU-機器學習基石(Machine Learning Foundations)-作业二的习题解答.笔者在做这些题目时遇到很多困难,当我在网上寻找答案时却找不到,而林老师又不提供答案,所以我就想把自己做题时对题目如何思考的写下来,为大家提供一些思路.当然,我对题目的理解不一定是正确的,如果各位博

【作业二】林轩田机器学习基石

作业一被bubuko抓取了,要是能注明转载就更好了() 作业二关注的题目是需要coding的Q16~Q20 Q16理解了一段时间,题目阐述的不够详细.理解了题意之后,发现其实很简单. 理解问题的关键是题目中给的's'是啥意思: (1)如果s=1,则意味着x>theta y预测为1,x<theta y预测为-1: (2)如果s=2,则以为着x<theta y预测为1,x<theta y预测为1 想明白这个事情之后,直接分theta大于0,小于0讨论,s=1 or s=-1把几种情况分

day1作业二:多级菜单操作

作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入b返回上一层,输入q退出整个程序