天天看点

小学生算数测试

问题及代码:

/*copyright(c++).烟台大学计算机与控制工程学院
文件名称:默认函数
作者:马艳艳
完成日期:2016年3月24日
版本号:vc++6.0
问题描述:随机产生一个1000内的数字,要求用户猜测这个整数。输入一个猜测想的整数,判断是否与产生的随机数相同。
输入描述:输入一个猜测想的整数。
输出描述:比对结果;*/
#include <iostream>
#include<cstdlib>
int randing();
using namespace std;
int main()

{
    
    int n,i,t,m=0;
    cin>>n;
	srand(n);
	
    for(i=1;i<=10;i++)
    {
		
        cout<<"第"<<i<<"题"<<endl;
		t=randing();
		m+=t;
       

    }
	 cout<<m<<endl;
	
    
 return 0;
}
int randing()
{
	int h,t,m;
    int s1,s2,sum,p,s,i=0;
    while(1)
    {
		s1=rand()%100;
		s2=rand()%100;
		s=rand()%4;
		  switch(s)
		  {
			case 0:
				cout<<s1<<"+"<<s2<<"=";
				cin>>p;
				if(p==s1+s2)
				{
					cout<<"correct"<<endl;
					i++;
				
				
				}
				
				else
					cout<<"error"<<endl;;
					break;
			case 1:
				cout<<s1<<"*"<<s2<<"=";
				cin>>p;
				if(p==s1*s2)
				{
					cout<<"correct"<<endl;
					i++;
				
				}
			
				else
					cout<<"error"<<endl;;
					break;
			case 2:
				cout<<s1<<"-"<<s2<<"=";
				cin>>p;
					if(p==s1-s2)
				{
					cout<<"correct"<<endl;;
					i++;
					
				}
				
				else
					cout<<"error"<<endl;;
				break;			
			case 3:
				if(s1%s2!=0)
				t=s1%s2;
				m=s1/s2;
				h=m+t;
				cout<<s1<<"/"<<s2<<"=";
				cin>>p;
					if(p==h)
				{
					cout<<"correct"<<endl;;
					i++;
				
				}
				
				else
					cout<<"error"<<endl;break;
			default:
				cout<<"wrong"<<endl;
				break;
		  }
		 
			 return i;
	}
	
}
           
小学生算数测试

知识点总结:

switch语句的应用还有死循环break,整体来说,这个程序很用心思。

学习心得:

感觉收获很大。沉下心来。