实 验 实 训 报 告
《VC#.NET 程序设计》
姓
名
学
号
班
级
成
绩
实验内容 应用.NET 类库中的栈类 Stack 完成十进制转换成二进制、八进制、十六进制。
要求应用 Windows 窗体程序设计实现,界面美观,功能完善。
任务分析
与
算法设计
先建立一个窗体,添加命令按钮,文本框和标签。
定义一个泛型对象Stack z = new
然后接收一个十进制数据,针对 16 进制可能存在余数大于 9 的情况进行判断,
双击命令按钮进行转换。
Stack();
测试数据
及
运行结果
(可贴图)
实验体会
(详细总
结出现的
问题及解
决方法)
附主要源代码:
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 进制转换
{
public partial class Form1 : Form
{
public Form1()
{
}
InitializeComponent();
private string Change(int n)
{
Stack z = new Stack();
int
a = Convert.ToInt16(textBox1.Text);
string sum = "";
while (a != 0)
{
int b = (a % n);
string m = "";
if (b > 9)
{
string op = "";
switch (b)
{
case 10: op = "A";
break;
case 11: op = "B";
break;
case 12: op = "C";
break;
case 13: op = "D";
break;
case 14: op = "E";
break;
case 15: op = "F";
break;
}
m = op;
}
else m = Convert.ToString(b);
z.Push(m);
a = a / n;
sum = z.Pop() + sum;
}
return sum;
}
private void button1_Click(object sender, EventArgs e)
{
}
l1.Text = Change(2);
private void button2_Click(object sender, EventArgs e)
l2.Text = Change(8);
private void button3_Click(object sender, EventArgs e)
l3.Text = Change(16);
{
}
{
}
}
}