用C语言编程自动生成四则运算

#include<stdio.h>
#include<stdlib.h>
#include <time.h>
#define N 30
main()
{
int a,b,k,i,n;
float c,d;
srand(time(NULL));
do{
printf("\n请输入数字类型(1.整数 2.小数) -1为退出程序: ");
scanf("%d",&n);

switch(n)
{
case 1:
{

for(i=0;i<N;i++)
{
a=rand()%100+1;
b=rand()%100+1;
k=rand()%4+1;
printf("%d",a);
switch(k)
{
case 1:printf("+");break;
case 2:printf("-");break;
case 3:printf("*");break;
case 4:printf("/");break;
}
printf("%d=\t\t",b);
}
break;
}
break;
case 2:
{
for(i=0;i<N;i++)
{
c=rand()*0.001+1;
d=rand()*0.001+1;
k=rand()%4+1;
printf("%0.2f",c);
switch(k)
{
case 1:printf("+");break;
case 2:printf("-");break;
case 3:printf("*");break;
case 4:printf("/");break;
}
printf("%0.2f=\t",d);
}
break;
}
break;
}
}while(n!=-1);
}

 

感想:这个实验虽然是一个简单的实验,但是过程却是有许多的收获的。首先就是令我非常印象深刻的是,在那天的上机课上,当我差不多写完程序的时候,学校的机房断电了,我们上机的电脑由于还原的功能,我所做的程序瞬间化为无影。这个小小的插曲让我觉得,当我们写到重要的东西的时候,必须记得保存,现在的代码还算少,当几千行代码化为无影的时候,就真的会让人抓狂了,我也感觉到我们每时每刻都在和上天玩着心跳的游戏,因为你不知道下一个瞬间会发生什么事情。然后就是写完的调试过程了,我和我的舍友都有讨论过,每个人都有不同的想法,区别只是在于思维的缜密性,越完善,用户的体验感觉就会越高,那么这个程序就会是一个优秀的程序。一开始调试的时候,舍友无意中的发现,每次出现的数据都是重复性的相同,那么就不能做到有不同的题目库,显然这个bug需要我们去解决。然后我通过上网的查询,学习,学到了一个新的头文件#include <time.h>,这是我们以前没有用过的头文件,搭配着这个srand(time(NULL));语句就会出现不同的题目库了。在这个检查的过程中,我学到了一个新的知识点,我知道,我们不可能了解每一个知识点,总有我们还没涉及到的东西,而通过实验通过调试,我们能够发现一些问题,并通过这些问题在网上找到相应的知识点和解决方案,这就是一个很好的学习过程。

posted @ 2015-03-25 21:33  15吕日荣  阅读(5168)  评论(7编辑  收藏  举报