C++结构体数组用法
输入n,随机产生n组操作数和运算符,并进行计算。
结果示例:
#include <iostream>
#include<stdlib.h>
#include<time.h>
#define random(x) (rand()%x)
using namespace std;
struct computer//计算器结构体
{ int op1,op2;//两个操作数
char ch;//运算符
};
int main()
{
computer a[100];
char c[4]={'+','-','*','/'};
int i,n;
cin>>n;
srand((int)time(0));
for(i=0;i<n;i++)
{
a[i].op1=rand();
a[i].ch=c[rand()%4];
a[i].op2=rand();
}
for(i=0;i<n;i++)
{
switch(a[i].ch)
{
case '+':cout<<a[i].op1<<"+"<<a[i].op2<<"="<<a[i].op1+a[i].op2<<endl;break;
case '-':cout<<a[i].op1<<"-"<<a[i].op2<<"="<<a[i].op1-a[i].op2<<endl;break;
case '*':cout<<a[i].op1<<"*"<<a[i].op2<<"="<<a[i].op1*a[i].op2<<endl;break;
case '/':
cout<<a[i].op1<<"/"<<a[i].op2;
if(a[i].op2==0) cout<<"不能被0除"<<endl;
else cout<<"="<<a[i].op1/a[i].op2<<endl;
break;
default:cout<<a[i].op1<<a[i].ch<<a[i].op2<<"运算符有错"<<endl;
}
}
return 0;
}