求大神帮忙看看下面一段C#程序哪里出了问题?
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Da...
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace _2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Random Random1 = new Random();
private void button1_Click(object sender, EventArgs e)
{
int a = Random1.Next(0, 101);
String s = label1.Text;
int b = Convert.ToInt32(s);
if (b > a)
{
label1.Text = "Please try again.";
b = b + 1;
}
else
if (b < a)
{
label1.Text = "Sorry,try again!";
b = b - 1;
}
else
{
label1.Text = "Congratulations!";
}
}
}
}
一执行输入数字后就提示输入的字符串有问题,但我实在看不出来问题也不会解决,求哪位大神帮忙看看到底怎么解决这个问题,多谢!没财富了就剩这么多点分全部奉上啦!
int b = Convert.ToInt32(s);
就是这一句提示字符格式不正确的…… 展开
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace _2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Random Random1 = new Random();
private void button1_Click(object sender, EventArgs e)
{
int a = Random1.Next(0, 101);
String s = label1.Text;
int b = Convert.ToInt32(s);
if (b > a)
{
label1.Text = "Please try again.";
b = b + 1;
}
else
if (b < a)
{
label1.Text = "Sorry,try again!";
b = b - 1;
}
else
{
label1.Text = "Congratulations!";
}
}
}
}
一执行输入数字后就提示输入的字符串有问题,但我实在看不出来问题也不会解决,求哪位大神帮忙看看到底怎么解决这个问题,多谢!没财富了就剩这么多点分全部奉上啦!
int b = Convert.ToInt32(s);
就是这一句提示字符格式不正确的…… 展开
3个回答
展开全部
s= label1.Text;
你这个label1.Text是什么内容?要想成功转换成数字,字符串必须要符合一定格式的,比如不能含小数点、字母、空格等。你检查下
你这个label1.Text是什么内容?要想成功转换成数字,字符串必须要符合一定格式的,比如不能含小数点、字母、空格等。你检查下
更多追问追答
追问
if (b > a) label1.Text = "Please try again.";
请问这个s该怎么改呢?
本来希望设计成这个样:
在1-100之间生成随机数,输入数字后,如果相等,label1变为"Congratulations!”;如果输入大于要求,label1=“Sorry”然后输入的数字+1直到等于;否则label1=“No.”单击Button1输入的数字-1直到等于。
追答
你输入数字的控件应该不是label1吧?应该是类似textbox1之类的控件吧。我觉得你应该把s = label1.Text改成s = textbox1.Text。
另外,你如果输入的数字大于或小于随机数,那至少需要写个while之类的循环语句让+1,或-1之后的值重新进行比较吧,否则+1,-1操作岂不是一点意义都没有了
展开全部
出错的时候,你把鼠标移到出错行的s,它会显示s的值,你看看它到底是不是整数,如果不是整数当然不能转
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-01-15
展开全部
你好!你试试改成这样
int b = Convert::ToInt32(s);
追问
还是不行,提示说
错误 1 命名空间别名限定符“::”始终解析为类型或命名空间,因此在这里是非法的。请考虑改用“.”。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询