50道C#编程题及答案(三)
35、单击“显示”按钮,在TextBox中显示所填和所选信息。
private void button1_Click(object sender, EventArgs e)
{
textBox2.Text ="";
textBox2.Text = "姓名为:" + textBox1.Text + " " ;
textBox2.Text += "班级为:" + textBox3.Text + " ";
string sex = "";
if (radioButton1.Checked)
sex = "男";
else
sex = "女";
textBox2.Text += "性别为:" + sex + " ";
string hobby = "";
if (checkBox1.Checked) hobby += "旅游";
if (checkBox2.Checked) hobby += "游戏";
if (checkBox3.Checked) hobby += "逛街";
if (checkBox4.Checked) hobby += "电脑";
textBox2.Text += "爱好为:" + hobby;
}
36、将窗体上的文本框中的字体,改变为所需的大小、颜色和字体。
private void button1_Click(object sender, EventArgs e)
{
fontDialog1.ShowColor = true;
fontDialog1.Font = textBox1.Font;
fontDialog1.Color = textBox1.ForeColor;
if (fontDialog1.ShowDialog() != DialogResult.Cancel)
{
textBox1.Font = fontDialog1.Font;
textBox1.ForeColor = fontDialog1.Color;
}
}
37、摄氏温度和华氏温度之间的转换。要求:编写Windows应用程序,使用Label,TextBox,Button控件,实现摄氏温度和华氏温度的转换。
摄氏温度C和华氏温度F之间的转换公式为:F=9/5C+32 C=5/9(F-32)
double c,c1,f,f1;
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
MessageBox.Show("请输入摄氏温度");
else
{
c = Convert.ToDouble(textBox1.Text);
c1=9.0 / 5.0 * c + 32;
textBox3.Text =c1 .ToString () ;
}
}
private void button2_Click(object sender, EventArgs e)
{
if (textBox2.Text == "")
MessageBox.Show("请输入华氏温度");
else
{
f = Convert.ToDouble(textBox2 .Text );
f1 = 5.0 / 9.0 * (f - 32);
textBox4 .Text =f1 .ToString ();
}
}
38、编写程序,统计4*5二维数组中奇数的个数和偶数的个数。
static void Main(string[] args)
{
int[,] a = new int[4, 5] { { 1, 2, 3, 4, 5 }, { 6, 7, 8, 9, 0 }, { 11, 12, 13, 14, 15 }, { 16, 17, 18, 19, 20 } };
int m = 0, n = 0;
for (int i = 0; i < 4; i++)
for (int j = 0; j < 5; j++)
if (a[i, j] % 2 == 0)
m++;
else
n++;
Console.WriteLine("奇数个数是{0},偶数个数是{1}", n, m);
Console.ReadLine();
}
39、创建一个窗体,该窗体包括一个可用来输入数字的文本框,当用户单击按钮后,在标签中显示一条消息,指出该数字是否位于0-100之间。
private void button1_Click_1(object sender, EventArgs e)
{
int m = Convert.ToInt32(Console.ReadLine());
if (m >= 0 && m <= 100)
label1.Text = "该数在0-100之间";
else
label1.Text = "该数不在0-100之间";
}
40、编写一个控制台应用程序,完成下列功能,并写出运行程序后输出的结果。
1)创建一个类A,在A中编写一个可以被重写的带int类型参数的方法MyMethod,并在该方法中输出传递的整型值后加10后的结果。
2)再创建一个类B,使其继承自类A,然后重写A中的MyMethod方法,将A中接收的整型值加50,并输出结果。
3)在Main方法中分别创建A和类B的对象,并分别调用MyMethod方法。
class Program
{
static void Main(string[] args)
{
A a = new A();
a.MyMethod(10);
B b = new B();
b.MyMethod(10);
Console.ReadLine();
}
}
class A
{
public virtual void MyMethod(int i)
{
i += 10;
Console.WriteLine(i);
}
}
class B : A
{
public override void MyMethod(int i)
{
i += 50;
Console.WriteLine(i);
}
}
41、定义一个行数和列数相等的二维数组,并执行初始化,然后计算该数组两条对角线上的元素值之和。
static void Main(string[] args)
{
int[,] a = new int[3, 3] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
int sum = 0;
for(int i=0;i<3;i++)
for (int j = 0; j < 3; j++)
{
if (i == j)
sum += a[i, j];
}
Console.WriteLine(sum);
Console.ReadLine();
}
42、在窗体上建立一个标签,一个文本框,一个命令按钮,标签的text属性设置为“VC#程序设计”,设计一个程序,单击命令按钮,将标签上的信息显示在文本框中。
private void button1_Click_1(object sender, EventArgs e)
{
textBox1.Text = label1.Text;
}
43、创建一个类Test,它存储一个int数据成员MyNumber,并给该数据成员创建属性,当该数据成员被存储时,将其乘以100;当其被读取时,将其除以100,并在主函数中验证。
class Program
{
static void Main(string[] args)
{
Test t = new Test();
t.Number = 10;
Console.WriteLine(t.Number);
Console.ReadLine();
}
}
class Test
{
int MyNumber;
public int Number
{
get { return MyNumber / 100; }
set { MyNumber = value * 100; }
}
}
44、写出设计以下程序的步骤,程序功能是:单击按钮,计算两个编辑框中数的和,并将结果用MessageBox显示出来。窗体布局如下:
private void button1_Click_1(object sender, EventArgs e)
{
double x=0.0;
string num1,num2;
num1=textBox1.Text.Trim();
num2=textBox2.Text.Trim();
x=Double.Parse(num1)+Double.Parse(num2);
MessageBox.Show(x.ToString());
}
45、编写A 1类,包含Sum方法,用来返回两个整数的积,主函数中调用该方法并将结果输出。
class Program
{
static void Main(string[] args)
{
A1 a = new A1();
int sum=a.Sum(c,b);
Console.WriteLine(sum);
Console.ReadLine();
}
}
class A1
{
public int Sum(int x,int y)
{
return x* y;
}
}
46、编写A 1类,包含Sum方法,用来返回两个整数的和,主函数中调用该方法并将结果输出。
class Program
{
static void Main(string[] args)
{
A1 a = new A1();
int sum=a.Sum(c,b);
Console.WriteLine(sum);
Console.ReadLine();
}
}
class A1
{
public int Sum(int x,int y)
{
return x + y;
}
}
47、编写Test类,包含name、age和addr,创建一个Test t=new Test(“张三”,22,”抚顺”);使用Display方法,将姓名、年龄和住址输出,并在Main中调用显示。
class Program
{
static void Main(string[] args)
{
Test t = new Test("张三", 22, "抚顺");
t.Display();
Console.ReadLine();
}
}
public class Test
{
string name, addr;
int age;
public Test(string name, int age, string addr)
{
this.name = name;
this.addr = addr;
this.age = age;
}
public void Display()
{
Console.WriteLine("姓名是" + name);
Console.WriteLine("年龄是" + age);
Console.WriteLine("地址是" + addr);
}
}
48、编写Test类,包含average方法,实现求数组中所有元素的平均值,Main中调用方法,显示出平均值。
class Program
{
static void Main(string[] args)
{
Test t = new Test();
int[] a = new int[] { 1, 3, 4, 5, 6, 7 };
t.average(a);
Console.ReadLine();
}
}
public class Test
{
public void average(int[] a)
{
double sum = 0;
for (int i = 0; i < a.Length; i++)
{
sum += a[i];
}
Console.WriteLine("平均值是" + sum / a.Length);
}
}
49、编写Test类包含Max,实现找出数组元素中最大值,并在Main中调用Max方法,最终显示的结果。
class Program
{
static void Main(string[] args)
{
Test t = new Test();
int[] a = new int[] { 1, 34, 6, 7, 9, 45 };
t.Max(a);
Console.ReadLine();
}
}
public class Test
{
public void Max(int[] a)
{
int max = a[0];
for (int i = 1; i < a.Length; i++)
{
if (a[i] > max)
max = a[i];
}
Console.WriteLine("最大值是" + max);
}
}
50、编写Test类包含Min方法,实现找出数组元素中最小值,并在Main中调用Min方法,最终显示的结果。
class Program
{
static void Main(string[] args)
{
Test t = new Test();
int[] a = new int[] { 1, 34, 6, 7, 9, 45 };
t.Min(a);
Console.ReadLine();
}
}
public class Test
{
public void Min(int[] a)
{
int min = a[0];
for (int i = 1; i < a.Length; i++)
{
if (a[i] < min)
min = a[i];
}
Console.WriteLine("最小值是" + min);
}
}
原文链接:http://www.jxszl.com/biancheng/C/445882.html