Web程序的设计实验指导书1116.docx
- 文档编号:11372245
- 上传时间:2023-02-28
- 格式:DOCX
- 页数:112
- 大小:1.48MB
Web程序的设计实验指导书1116.docx
《Web程序的设计实验指导书1116.docx》由会员分享,可在线阅读,更多相关《Web程序的设计实验指导书1116.docx(112页珍藏版)》请在冰豆网上搜索。
Web程序的设计实验指导书1116
Web程序设计
实验指导书
松波
2010.09
实验一C#和ASP.Net3.5
一.实验目的
(1)了解C#语言规
(2)掌握C#基础语法、流程控制和异常处理等。
(3)掌握创建C#类并应用于ASP.NET3.5Web窗体中的方法。
二.实验容与要求
1.转换输入的成绩到相应的等级
要求如下:
(1)页面浏览效果如图1-1所示
(2)成绩输入使用TextBox控件。
(3)点击Button控件时输出相应的等级信息,其中等级信息输出在一个Label上
图1-1成绩转换浏览效果
2.在Web窗体上输出九九乘法表
浏览效果如图1-2所示
图1-2“九九乘法表”浏览效果
3.输入一组以空格间隔的共10个以的整数,输出该组整数的降序排列
要求如下:
(1)页面浏览效果如图1-3所示。
(2)输入使用TextBox控件。
(3)单击Botton控件时输出所有整数的降序排列。
(4)必须使用数组。
图1-3降序排列浏览效果
4.计算两个数的商
要求如下:
(1)页面浏览效果如图1-4和图1-5所示。
(2)输入使用两个TextBox控件。
(3)单击Botton控件时输出两个数的商。
(4)必须包含异常处理。
图1-4计算商浏览效果
(1)
图1-5计算商浏览效果
(2)
5.设计一个用户信息类UserInfo
要求如下:
(1)包括两个属性:
(Name)和生日(Birthday)。
(2)包括一个方法DecideAge()用于判断用户是否达到规定年龄。
当年龄大于等于18岁时返回值“XXX,您是成年人了!
”;当年龄小于18岁时返回值“XXX,您还没长大呢!
”。
6.将UserInfo类应用于Web窗体中
页面浏览效果如图1-6和图1-7所示。
图1-6UserInfo类浏览效果图
(1)
图1-7UserInfo类浏览效果图
(2)
三.实验步骤
1.转换输入的成绩到相应的等级
(1)设计Web窗体
新建一个Web窗体,切换到设计视图。
如图1-8所示,向页面添加1个TextBox控件、1个Botton控件和1个Lable控件。
图1-8设计界面
(2)设置属性
Web窗体中各控件的属性设置如表1-1所示。
表1-1各控件的属性设置表
控件
属性名
属性值
说明
TextBox
ID
txtInput
“输入成绩”文本框的编程名称
Botton
ID
btnSubmit
“等级”按钮的编程名称
Text
等级
“等级”按钮上显示的文本
Label
ID
lblDisplay
用来显示等级信息的Label控件编程名称
Text
空
出示不显示任何容
(3)编写事件代码
按钮btnSubmit被单击时执行的事件代码如下:
protectedvoidbtnSubmit_Click(objectsender,EventArgse)
{
floatfGrade=float.Parse(txtInput.Text);
intiGrade=(int)(fGrade/10);
switch(iGrade)
{
case10:
case9:
lblDisplay.Text="优秀";
break;
case8:
lblDisplay.Text="良";
break;
case7:
lblDisplay.Text="中";
break;
case6:
lblDisplay.Text="与格";
break;
case5:
case4:
case3:
case2:
case1:
case0:
lblDisplay.Text="不与格";
break;
}
}
(4)浏览建立的Web窗体进行测试。
2.在Web窗体上输出九九乘法表
新建一个Web窗体,切换到设计视图。
在空白处双击,编写Web窗体载入时执行代码如下:
protectedvoidPage_Load(objectsender,EventArgse)
{
for(inti=1;i<=9;i++)
{
for(intj=1;j<=i;j++)
{
Response.Write(i.ToString()+"*"+j.ToString()+"="+(i*j).ToString());
Response.Write("  ");
}
Response.Write("
");
}
}
最后,浏览建立的Web窗体查看效果。
3.输入一组以空格间隔的共10个以的整数,输出该组整数的降序排列
(1)设计Web窗体
新建一个Web窗体,切换到设计视图。
如图1-9所示,向页面添加1个TextBox控件、1个Botton控件。
图1-9设计界面
(2)设置属性
Web窗体中各控件的初始属性设置如表1-2所示。
表1-2各控件的属性设置表
控件
属性名
属性值
说明
TextBox
ID
txtInput
“输入一组数据”文本框的编程名称
Botton
ID
btnSubmit
“降序级”按钮的编程名称
Text
降序
“降序”按钮上显示的文本
(3)编写事件代码
按钮btnSubmit被单击时执行的事件代码如下:
protectedvoidbtnSubmit_Click(objectsender,EventArgse)
{
stringsInput;
sInput=txtInput.Text.Trim()+"";
intj=0;
int[]aInput=newint[10];
stringtemp="0";
for(inti=0;i<=sInput.Length-1;i++)
{
if(sInput.Substring(i,1)!
="")
{
temp+=sInput.Substring(i,1);
}
else
{
aInput[j]=int.Parse(temp);
j++;
temp="0";
}
}
Array.Sort(aInput);
Array.Reverse(aInput);
foreach(intiinaInput)
{
if(i!
=0)
{
Response.Write(i+"  ");
}
}
}
(4)浏览建立的Web窗体进行测试。
4.计算两个数的商
(1)设计Web窗体
新建一个Web窗体,切换到设计视图。
如图1-10所示,向页面添加2个TextBox控件、1个Botton控件。
图1-10设计界面
(2)设置属性
Web窗体中各控件的初始属性设置如表1-3所示。
表1-3各控件的属性设置表
控件
属性名
属性值
说明
TextBox
ID
txtDivsor
“除数”文本框的编程名称
TextBox
ID
txtDivided
“被除数”文本框的编程名称
Botton
ID
btnSubmit
“提交”按钮的编程名称
Text
提交
“提交”按钮上显示的文本
(3)编写事件代码
按钮btnSubmit被单击时执行的事件代码如下:
protectedvoidbtnSubmit_Click(objectsender,EventArgse)
{
try
{
floatdivsor=float.Parse(txtDivsor.Text);
floatdividend=float.Parse(txtDividend.Text);
Response.Write("商为:
"+divsor/dividend);
}
catch(Exceptionee)
{
Response.Write("系统提示"+ee.Message+"
");
Response.Write("请输入正确的数字");
}
}
(4)浏览建立的Web窗体进行测试。
5.设计一个用户信息类UserInfo
(1)右击App_Code文件夹,选择“添加新项”→“类”模板,重命名为UserInfo.cs,单击“添加”按钮。
(2)输入代码如下:
publicclassUserInfo
{
privatestring_Name;
privateDateTime_Birthday;
publicstringName
{
get
{
return_Name;
}
set
{
_Name=value;
}
}
publicDateTimeBirthday
{
get
{
return_Birthday;
}
set
{
_Birthday=value;
}
}
publicUserInfo(stringname,DateTimebirthday)
{
//
//TODO:
在此处添加构造函数逻辑
//
this.Name=name;
this.Birthday=birthday;
}
publicstringDecideAge()
{
if(DateTime.Now.Year-_Birthday.Year<18)
{
returnthis._Name+"您还没长大呢!
";
}
else
{
returnthis._Name+"您已经成年了";
}
}
}
6.将UserInfo类应用于Web窗体中
(1)设计Web窗体
新建一个Web窗体,切换到设计视图。
如图1-11所示,向页面添加2个TextBox控件、1个Botton控件。
图1-11设计界面
(2)设置属性
Web窗体中各控件的初始属性设置如表1-4所示。
表1-4各控件的属性设置表
控件
属性名
属性值
说明
TextBox
ID
txtName
“”文本框的编程名称
TextBox
ID
txtBirthday
“生日”文本框的编程名称
Botton
ID
btnSubmit
“提交”按钮的编程名称
Text
提交
“提交”按钮上显示的文本
(3)编写事件代码
按钮btnSubmit被单击时执行的事件代码如下:
protectedvoidbtnSubmit_Click(objectsender,EventArgse)
{
stringname=txtName.Text;
stringbirthday=txtBirthday.Text;
UserInfouserInfo=newUserInfo(name,DateTime.ParseExact(birthday,"yyyymmdd",null));
Response.Write(userInfo.DecideAge());
}
(4)浏览建立的Web窗体进行测试。
实验二ASP.NET3.5标准控件
一.实验目的
(1)理解ASP.NET3.5页面事件处理流程。
(2)理解ASP.NET3.5标注控件的应用。
二.实验容与要求
1.设计并实现一个简易的计算器
要求如下:
(1)页面浏览效果如图2-1所示
(2)仿照一般计算器的工作方式,实现加和减的功能。
图2-1“简易计算器”浏览效果
2.设计并实现一个用于查询教师课表的联动下拉列表框页面
要求如下:
(1)页面浏览效果如图2-2所示
(2)“学年”下拉列表框中添加十个数据项:
当前学年与之前的九个学年。
(3)“学期”下拉列表框中添加两个数据项:
1和2.
(4)“分院”下拉列表框中添加三个数据项:
“数学与信息工程学院”、“机电学院”和“外国语学院”。
(5)“教师”下拉列表框中的数据项根据不同的分院产生。
图2-2联动下拉列表框浏览效果
3.设计并实现一个用于单项选择题的测试页面
要求如下:
(1)页面浏览效果如图2-3所示
(2)试题要求和选择题必须动态生成。
(3)如图2-4所示,当单击提交按钮时,给出选择的答案。
图2-3测试页面效果
(1)图2-4测试页面效果
(2)
三.实验步骤
1.设计并实现一个简易的计算器
(1)设计Web窗体
新建一个Web窗体,切换到设计视图。
如图2-5所示,向页面添加1个用于布局的1行1列黑色边框表格。
向表格中添加一个TextBox控件、6个Botton控件。
图2-5
(2)设置属性
Web窗体中各控件的属性设置如表2-1所示。
表2-1各控件的属性设置表
控件
属性名
属性值
说明
TextBox
ID
txtDisplay
用于显示输入数字的文本框控件编程名称
ReadOnly
True
不能更改文本框中的文本,默认值为False
Botton
ID
btnOne
“数字1”按钮的编程名称
Text
1
“数字1”按钮上显示的文本
Botton
ID
btnTwo
“数字2”按钮的编程名称
Text
2
“数字2”按钮上显示的文本
Botton
ID
btnThree
“数字3”按钮的编程名称
Text
3
“数字3”按钮上显示的文本
Botton
ID
btnAdd
“+”按钮的编程名称
Text
+
“+”按钮上显示的文本
Botton
ID
btnSubtract
“-”按钮的编程名称
Text
-
“-”按钮上显示的文本
Botton
ID
btnEqual
“=”按钮的编程名称
Text
=
“=”按钮上显示的文本
(3)编写事件、方法代码
在所有事件、方法外声明静态字段。
静态字段保证了其中的数据可以在所有的事件、方法中被访问,并能在事件代码或方法代码执行结束后保留数据。
其中,静态字段num1用于存储算式中的第一个数字字符串,初始值为“0”;num2用于存储算式中的第二个数字字符串,初始值为“0”;total用于存储将所有输入的数连接后的数字字符串,初始值为“”(空字符串);sign用于存储运算符号,初始值为“”。
代码如下:
staticstringnum1="0",num2="0",total="",sign="";
按钮btnOne被单击时执行的事件代码如下:
protectedvoidbtnOne_Click(objectsender,EventArgse)
{
total+="1";//将数字字符串"1"与total原值连接后再存入total
txtDisplay.Text=total;
}
按钮btnTwo被单击时执行的事件代码如下:
protectedvoidbtnTwo_Click(objectsender,EventArgse)
{
total+="2";
txtDisplay.Text=total;
}
按钮btnThree被单击时执行的事件代码如下:
protectedvoidbtnThree_Click(objectsender,EventArgse)
{
total+="3";
txtDisplay.Text=total;
}
按钮btnAdd被单击时执行的事件代码如下:
protectedvoidbtnAdd_Click(objectsender,EventArgse)
{
if(sign.Length==1)//sign已存储运算符号
{
Count();//调用Count()方法计算结果
num1=txtDisplay.Text;
sign="+";
}
else//sign未存储运算符号
{
num1=txtDisplay.Text;
txtDisplay.Text="";
total="";
sign="+";
}
}
按钮btnSubtract被单击时执行的事件代码如下:
protectedvoidbtnSubtract_Click(objectsender,EventArgse)
{
if(sign.Length==1)//sign已存储运算符号
{
Count();//调用自定义方法Count()计算结果
num1=txtDisplay.Text;
sign="-";
}
else//sign未存储运算符号
{
num1=txtDisplay.Text;
txtDisplay.Text="";
total="";
sign="-";
}
}
按钮btnEqual被单击时执行的事件代码如下:
protectedvoidbtnEqual_Click(objectsender,EventArgse)
{
Count();//调用自定义方法Count()计算结果
}
///
///计算“num1运算符num2”的结果
///
protectedvoidCount()
{
num2=txtDisplay.Text;
if(num2=="")//num2值为空字符串
{
num2="0";
}
switch(sign)//根据不同的运算符分别计算结果
{
case"+":
txtDisplay.Text=(int.Parse(num1)+int.Parse(num2)).ToString();
num1="0";
num2="0";
total="";
sign="";
break;
case"-":
txtDisplay.Text=(int.Parse(num1)-int.Parse(num2)).ToString();
num1="0";
num2="0";
total="";
sign="";
break;
}
}
}
(4)浏览建立的Web窗体进行测试。
2.设计并实现一个用于查询教师课表的联动下拉列表框页面
(1)设计Web窗体
新建一个Web窗体,切换到设计视图。
如图2-6所示,向页面输入“学年:
”、“学期:
”、“分院:
”和“教师:
”等信息,适当设置字体大小。
再向页面添加4个DropDownList控件,适当调整个控件的大小和位置。
图2-6
(2)设置属性
Web窗体中各控件的属性设置如表2-2所示。
表2-1各控件的属性设置表
控件
属性名
属性值
说明
DropDownList
ID
ddlYear
“学年”下拉列表框的编程名称
AutoPostBack
True
当列表项容改变后,自动触发页面往返
DropDownList
ID
ddlTerm
“学期”下拉列表框的编程名称
AutoPostBack
True
当列表项容改变后,自动触发页面往返
DropDownList
ID
ddlCollege
“分院”下拉列表框的编程名称
AutoPostBack
True
当列表项容改变后,自动触发页面往返
DropDownList
ID
ddlTeacher
“教师”下拉列表框的编程名称
AutoPostBack
True
当列表项容改变后,自动触发页面往返
(3)编写事件、方法代码
Web窗体首次载入时执行的代码如下:
protectedvoidPage_Load(objectsender,EventArgse)
{
//页面第一次载入,向各下拉列表填充值
if(!
IsPostBack)
{
BindYear();
BindTerm();
BindCollege();
BindTeacher();
}
}
当“分院”下拉列表框中选择项改变时,触发的事件代码如下:
protectedvoidddlCollege_SelectedIndexChanged(objectsender,EventArgse)
{
BindTeacher();
}
自定义方法BingYear()的代码如下:
protectedvoidBindYear()
{
//清空学年下拉列表中项
ddlYear.Items.Clear();
intstartYear=DateTime.Now.Year-10;
intcurrentYear=DateTime.Now.Year;
//向学年下拉列表添加项
for(inti=startYear;i<=currentYear;i++)
{
ddlYear.Items.Add(newListItem((i-1).ToString()+"-"+i.ToString()));
}
//设置年份下拉列表默认项
ddlYear.SelectedValue=(currentYear-1).ToString()+"-"+currentYear.ToString();
}
自定义方法BingTerm()的代码如下:
protectedvoidBindTerm()
{
ddlTerm.Items.Clear();
//向学期下拉列表添加项
for(inti=1;i<=2;i++)
{
ddlTerm.Items.Add(i.ToString());
}
}
自定义方法BingCollege()的代码如下:
protectedvoidBindCollege()
{
ddlCollege.Items.Clear();
ddlCollege.Items.Add(newListItem("数学与信息工程学院"));
ddlCollege.Items.Add(newListItem("外国语学院"));
ddlCollege.Items.Add(newListItem("机电学院"));
}
自定义方法BingTeacher()的代码如下:
protectedvoidBindTeacher()
{
ddlTeacher.Items.Clear();
switch(ddlCollege.SelectedValue)//根据不同的分院产生不同的教师
{
case"数学与信息工程学院":
//添加教师列表。
在实际工程中,数据来源于数据库
d
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 程序 设计 实验 指导书 1116