数据类型猜测游戏
我的任务是创建一个猜测游戏,用户可以输入数据类型,程序必须返回相同格式的数据。否则程序将输出数据,用户必须在一些具有相同格式键入...数据类型猜测游戏
这是项目描述:
对于这个项目,你会根据简单的数据类型来创建一个猜谜游戏在C#中使用了 。您的程序应该输出一个数字并根据数值和格式设置, 用户必须输入与数字(或字符)格式匹配的数据类型。 然后程序会提示是否可以使用较小的数据类型来保存该值。你的程序也应该提供一个颠倒的游戏选项。如果你输入一个 值,那么它应该输出正确的数据类型。 这个程序应该使用byte,sbyte,int,uint,short,ushort,long,ulong,char,float, double,decimal和string。 提示:循环语句和分支将确实帮助您控制程序如何处理数据。
/*referenced http://www.gamedev.net/topic/462388-guess-the-number-game-c/ */
using System;
using System.Collections.Generic;
using System.Text;
namespace Guess
{
class Program
{
static void Main(string[] args)
{
while (true)
{
string Value = 0;
string UserValue = 0;
int Switch = GenerateNumber(1,13);
Console.WriteLine("I want to play a guessing game... do you want to guess first? (1=yes or 0=no) \r\n");
int intTemp = Convert.ToInt32(Console.Readline());
if(intTemp == 0)
{
Console.WriteLine("\r\n OK... I will guess first... please type in a value: \r\n");
UserValue = Console.Readline();
if(
/*randomly picks a datatype case */
switch(Switch);
{
case 1:
/*byte*/
break;
case 2:
/*sbyte*/
break;
case 3:
/*int*/
break;
case 4:
/*uint*/
break;
case 5:
/*short*/
break;
case 6:
/*ushort*/
break;
case 7:
/*long*/
break;
case 8:
/*ulong*/
break;
case 9:
/*char*/
break;
case 10:
/*float*/
break;
case 11:
/*double*/
break;
case 12:
/*decimal*/
break;
case 13:
/*string*/
break;
}
我有想出逻辑来区分数据类型的其余部分字符串和字符的麻烦。我知道,在大多数情况下,我只需要做一个if语句来确定数据类型是否在一定范围内,那么有人可以请我填写关于如何执行此操作的逻辑?
A char
是正好是的一个字符。
A string
是的一个集合字符数(基本上)。
所以如果输入是字符串类型,并且只有一个字符,它可以是一个字符(可能是你的目的)。如果它是任何其他长度,它是一个字符串。
对于其他数据类型,如果输入字符串不是该数据类型的有效值,那么TryParse
将会失败。
感谢您的解析提示,我想我应该能够使用解析过滤所有这些,正确吗? – 2014-09-18 20:59:08
@ColbytheEngineer除了'char'和'string'(显然)之外的所有东西,是的。请记住,所有大数据类型也会解析较小的数据类型。小的可能会用“OverflowException”来解析大的,所以你应该测试它,并确保你处理这种情况。此外,在技术上*字符串也是数字(如0xFF)将失败一个简单的'TryParse'调用。 – BradleyDotNET 2014-09-18 21:10:06
您无法区分表示为字符串和1长度字符串的字符。 (char - >字符串隐式转换将隐藏原始类型差异。) 您可以(必须)假定长度将在char和string之间进行选择。
+1对于作业问题,这实际上很不错。感谢您展示您的尝试,并确切地感到困惑! – BradleyDotNET 2014-09-18 17:43:57
因此隐藏在这个文本墙上的是实际的问题_“字符和字符串有什么区别”_?您是否尝试在网站或该网站上搜索该问题? :-) – CodeCaster 2014-09-18 17:46:19