#include<iostream> #include<string> #include<ctime> #include<conio.h> using namespace std; struct option { char id; string description; int weight; }; int main() { string question; cout<<"请输入您的问题:"; cin>>question; int num; cout<<"请输入选项个数:"; cin>>num; option *choices=new option[num]; int sum=0; for(int i=0;i<num;++i) { choices[i].id='A'+i; cout<<"请输入选项"<<choices[i].id<<"的描述和权重:"; cin>>choices[i].description>>choices[i].weight; sum +=choices[i].weight; } cout<<"天灵灵,地灵灵,太上老君急急如律令,请按任意键立即显灵. . ."; srand(time(NULL)); while(1) { if(kbhit()) { int temp=rand()%sum; for(int i=0;i<num;++i) { if(temp<choices[i].weight) { cout<<endl<<"答案是:"<<choices[i].id<<"("<<choices[i].description<<")"<<endl; break; } temp -=choices[i].weight; } getch(); break; } rand(); } delete[] choices; return 0; }