作业二--------个人编程项目:四则运算。

本周作业:自动生成四则运算题目

程序代码:

#include"stdio.h" #include"stdlib.h"
#include<time.h>
main(){
int a,b,result,i,j,m,n;
printf("四则运算题目数量:");
scanf("%d",&i);
srand( (unsigned)time( NULL ) );
for( j = 0; j < i;j++ )
{
a=rand()%100+1;
b=rand()%100+1;
m=rand()%100+1;
n=rand()%100+1;
result=rand()%8;
switch(result){
case 0:printf("%d+%d= ",a,b);break;
case 1:printf("%d-%d= ",a,b);break;
case 2:printf("%d*%d= ",a,b);break;
case 3:printf("%d/%d= ",a,b);break;
case 4:printf("%d/%d+%d/%d= ",a,m,b,n);break;
case 5:printf("%d/%d-%d/%d= ",a,m,b,n);break;
case 6:printf("%d/%d*%d/%d= ",a,m,b,n);break;
case 7:printf("%d/%d/%d/%d= ",a,m,b,n);break;
}
}
}

程序截图:

我的总结:

在这次作业中,我终于知道基础薄弱的话是不可能完成一个项目的,所以在此基础上,我借鉴了网上的程序,并认真学习。在刚开始我真的是毫无头绪。

后来我在看了别人的程序之后,知道了四则运算要先是随机数的生成,使用rand函数就可以生成。之后就是四则运算表达式,使用的switch语句。最开始我将a、b两个随机数定义为int整型,在switch语句中,分支了4个选择,分别是加减乘除。题目中要求还要支持真分数的运算,但在c语言中没有真分数,所以用float浮点型来表示,但是生成的结果并不是想要的。经过上网查找借鉴,最后将switch语句分支了8个选择,分别是四个整数的和四个分数的,而其中的分数则使用a/m来表示。

虽然这些并不算什么,但是我会努力地学习,争取追上其他同学,最后也可以自己完成一个完整的项目。

原文地址:https://www.cnblogs.com/wsssss/p/5280086.html