【发布时间】:2010-04-26 00:32:04
【问题描述】:
我正在尝试制作一个适用于扑克(德州扑克)起手牌的程序;每手牌都有一个从 1 到 169 的值,我希望能够输入每张牌以及它们是否适合,并让这些值对应于一系列结构。这是到目前为止的代码,我似乎无法让它工作(我是一个初级程序员)。哦,顺便说一下,我正在使用 Visual Studio 2005
#include "stdafx.h"
#include <iostream>
int main()
{
using namespace std;
struct FirstCard
{
struct SecondCard
{
int s; //suited
int n; //non-suited
};
SecondCard s14;
SecondCard s13;
SecondCard s12;
SecondCard s11;
SecondCard s10;
SecondCard s9;
SecondCard s8;
SecondCard s7;
SecondCard s6;
SecondCard s5;
SecondCard s4;
SecondCard s3;
SecondCard s2;
};
FirstCard s14; //ace
FirstCard s13; //king
FirstCard s12; //queen
FirstCard s11; //jack
FirstCard s10;
FirstCard s9;
FirstCard s8;
FirstCard s7;
FirstCard s6;
FirstCard s5;
FirstCard s4;
FirstCard s3;
FirstCard s2;
s14.s14.n = 169; // these are the values that each combination
s13.s13.n = 168; // will evaluate to, would eventually have
s12.s12.n = 167; // hand combinations all the way down to 1
s11.s11.n = 166;
s14.s13.s = 165;
s14.s13.s = 164;
s10.s10.n = 163; //10, 10, nonsuited
s14.s13.n = 162;
s14.s11.s = 161;
s13.s12.s = 160;// king, queen, suited
s9.s9.n = 159;
s14.s10.s = 158;
s14.s12.n = 157;
s13.s11.s = 156;
s8.s8.n = 155;
s12.s11.s = 154;
s13.s10.s = 153;
s14.s9.s = 152;
s14.s11.n = 151;
cout << "enter first card: " << endl;
cin >> somthing?//no idea what to put here, but this would somehow
//read out the user input (a number from 2 to 14)
//and assign it to the corresponding struct
cout << firstcard.secondcard.suited_or_not << endl; //this would change depending
//on what the user inputs
system("Pause");
}
【问题讨论】:
-
诚实吗?我认为你需要从头开始。从简单开始 - 编写一个让用户输入数字 2-14 和西装 (s,c,d,h) 的函数。然后调用它两次。分配给“card1”和“card2”,然后用它们来判断它是否适合并计算1-169索引。你的 Card 结构应该有“value”和“suit”。
标签: c++ visual-studio-2005 struct initializing