2024年1月1日发(作者:)

程序设计教程课后答案

【篇一:程序设计课后习题答案(沈士根版)】

/p> (1).net framework主要包括 公共语言运行库clr 和 类库。

(2)网站在编译时,首先将语言代码编译成 微软中间语言msil。

(3)一台iis web服务器ip地址为210.78.60.19,网站端口号为8000,则要访

问虚拟目录xxxy中的url为

(4)可以通过 复制网站 同步网站上的一个文件。

2.是非题

(1)托管代码是以clr为基础的代码。(√)

(2)3.5仍使用2.0引擎。(√)

(3).net framework 3.0是.net framework 3.5的一部分。(√)

3.选择题

(1).net framwork3.5不包括(a)

a. .net framework 1.1 b. .net framework 2.0

c. linq d. ajax

(2)下面(d)网站在建立时要求安装microsoft frontpage服务器扩展。

文件系统 b. 本地iis c. ftp站点 d.远程站点

(3) 发布网站后不可能存在的文件夹是(b)

a. app__code _themes

第二章

1. 填空题

(1) visual studio 2008 默认建立的xhiml文件类型是transitional。

(3) 存放web窗体页c#代码的模型有单文件页模型和代码隐藏页模型。

(4) 单文件页模型中,c#代码必须包含于script…/script之间。

(5) 外部样式表通过link元素链接到网页。

(6) xml主要用于传输和存储数据。

2.是非题

(2) xhtml中每个元素都有结束标记。(√)

(3) .htm文件不需要编译,直接从web服务器下载到浏览器执即可。(√)

3.选择题

(1)css样式不包括(d)

a 基于元素的样式b. 基于类的样式

c. 基于id的样式 d. 基于文件的样式

(2)下面(b)是静态网页文件的扩展名。

a..net b. .html c..aspxd..jsp

(3)app_code文件夹用了存储(c)

a. 数据库文件 b. 共享文件 c. 代码文件 d. 主题文件

(4) 文件不能用于(a)。

a. application事件定义 b. 数据库连接字符串定义

c. 对文件夹访问授权 d.基于角色的安全性控制

第三章

1. 填空题

(1) c#使用的类库就是 . net framework提供的类库。

(2) 要在一个类中包含命名空间的语句是using

(3) 使用static修饰符能调用未实例化得类中的方法。

(4) c#中的数据类型包括值类型和引用类型。

(5) 枚举类型是由一组命名常量组成的类型。

(6) 在c#统一类型系统中,所有类型都是直接或间接地从继承。

(7) 装箱实质是把值类型转化为引用类型。

(8) 至少会执行一次循环的循环语句是do-while语句。

(9) 较适用于一直知循环次数的循环语句是for语句。

(10) 如果类名为userinfo,那么它的构造函数名为userinfo。

(11) 继承可以重用现有类的数据和行为,并扩展新的功能。

2. 是非题

(1) decimal类型必须在数据末尾添加m或m,否则编译器以double类型处理。(

(2) 访问数据结构中成员的方式通常使用“结构名.成员名”形式。(√)

(5) 在switch结构中,每一个case块的结束必须有break或goto语句。(√)

(6) foreach语句适用于枚举数组中的元素。(√)

(7) 当一个类实例化时,它的构造函数中包含的代码肯定会执行。(√)

3. 选择题

(1) 下列数据类型属于值类型的是(a)。

a. struct te

(2)下列数据类型属于引用类型的是(c)。

a.

(3)下列运算符中(d)具有三个操作数。

a.= b.c.++ d.?

(4)下面有关数据类型的描述中不正确的是(b)。

a.在引用类型中,有可能两个变量引用同一个对象。

b.bool类型中可以用数字1表示true。

c.byte类型的取值范围是0~255。、

d.可以通过转义符方式输入字符。

(5)下面对protected修饰符说法正确的是(d)

a.只能在派生类中访问b.只能在所属的类中访问 √)

c.能在当前应用程序中访问d.能在所属的类或派生类中访问

(6)以下有关属性的说法错误的是(b)。

a.通过属性能获取类中 private字段的数据

b.当属性定义时,若仅包含set访问器,表示该属性为只读属性

c.属性的访问形式是“对象名.属性名”

d.属性体现了对象的封装性

第四章

1. 填空题

(1)在textbox控件中输入内容并当焦点离开textbox控件时能触发textchanged事件,应设置属性 。

(2)判断页面是否第一次载入可通过属性 ispostback 实现。

(3) 3.5 的服务器控件包括 html服务器控件和 web服务器控件。

(4)添加属性 runat=server 可将xhtml元素转化为html服务器控件。

(5)设置属性 enabled 可决定web服务器控件是否可用。

(6)当需要将textbox控件作为密码输入框时,应设置textmode=password。

(7)对使用数据源显示信息的web服务器控件,当设置完控件的属性datasource后,需要方法 databind()

才能显示信息。

(8)如果需要将多个单独的radiobutton控件形成一组具有radiobuttonlist控件的功能,可以通过将属性 设置成相同的值实现。

2. 是非题

(1)单击button类型控件会形成页面往返处理( √ )。

(2)当页面返回时,在触发控件的事件之前会触发page_load事件( √ )。

(4)利用multiview和view控件能实现向导功能( √ )。

3. 选择题

(1)web服务器控件不包括( b )。

a. wizard b. input c. adrotator d. calender

(2)下面的控件中不能执行鼠标单击事件的是( c )。

a. imagebutton b. imagemap c. image d. linkbutton

(3)单击button类型控件后能执行单击事件的是( a )。

a. onclinentclick b. onclick

c. oncommandclick d. onclientcommand

(4)当需要用控件输入性别时,应选择的控件是(d)。

a. checkbox

b. checkboxlist

c. labled. radiobuttonlist

(5)下面不属于容器控件的是( b )。

a. panelb. checkbox

c. tabled. placeholder

第五章

1填空题

(1)窗体验证包括 客户端和服务器端 两种形式。

(2)判断页面的属性 isvalid 值可确定整个页面的验证是否通过。

(3)若页面中包含验证控件,可设置按钮的属性

causesvalidation=false ,使得单击该按钮后不会引发

验证过程。

(4)若要对页面中包含的控件分成不同的组进行验证,则应设置这些控件的属性 validationgroup 为相同

值。

(5)通过正则表达式定义验证规则的控件是

regularexpressionvalidator。

(6)设置属性 controltovalidate 指定被验证控件的id。

2.是非题

(1)如果客户机禁用javascript,则验证必须采用服务器端形式。( √ )

(3)要执行客户端验证必须设置验证控件属性enableclientscript值为true.

( √)

3.选择题

(1)下面对3.5验证控件说法正确的是 (a )。

a.可以在客户端直接验证用户输入信息并显示错误信息。

b.对一个下拉列表控件不能使用验证控件

c.服务器验证控件在执行验证时必定在服务器端执行

d.对验证控件,不能自定义规则

(2)下面对customvalidator控件说法错误的是( d )。

a.能使用自定义的验证函数

b.可以同时添加客户端验证函数和服务端验证函数

c.指定客户端验证的属性是clientvalidationfuction

d.属性runat用来指定服务器端验证函数

(3)使用validatorsummary控件需要以对话框形式显示错误信息,则应( b)。

a. 设置属性showsummary 值为true

b. 设置属性showmessagebox 值为true

c. 设置属性showsummary 值为false

d. 设置属性showmessagebox 值为true

(4)如果需要确保用户输入大于100的值,应该使用(c )验证控件。

edfieldvalidator.

b. rangevalidator

c. comparevalidator

d. regularexpressionvalidator

第六章

1. 填空题

(1) 从http://10.200.1.23/?id=4703中获取id值的方法是

(2) 要获取客户端ip地址,可以使用

variables[remote_addr]。

(3) 终止网页执行可以使用 () 。

(4) 要获取网页物理路径可以使用

h() 。

(5) 状态管理具有客户端和服务器端两种方式。

(6) 设置button类型控件的属性 postbackurl 值可确订单击按钮后跳转到相应网页。

(7) session对象启动时会触发 session_start 事件。

(8) 设置绘画有效时间为10分钟的语句是

t=10; 。

(9) 若设置浏览器禁止cookie,要有效地识别用户可以在

中加入 sessionstate 。

(10) 要对application状态变量值修改之前应使用

() 。

2. 是非题

(1) 判断属性iscrosspostback的值可确定是否属于跨网页提交。(√)

(2) application状态可由网站所有用户进行更改。(√)

(3) 使用html控件时将不能保持viewstate状态。(√)

(5) session状态可以在同一会话的不同网页间共享。(√)

3. 选择题

(1) 要重定向网页,不能使用(c)

a.linkbutton控件ct()方法

c.image控件er()方法

(2)下面的(a)对象可使用于使服务器获取从客户端浏览器提交的信息。

a.sponse

ssionstate plication

(3)session状态和cookie状态的最大区别是(a)。

a.储存的位置不同 b.类型不同

c.生命周期不同d.容量不同

(4)默认情况下,session状态的有效时间是(d)

a.30秒 b.10分钟 c.30分钟 d.20分钟

(5)执行=”a herf=’’微软/a”;语句后,页面上显示

的内容是(b)。

a.a href=’’微软/a

b.以超链接形式显示“微软”

c.微软

d.程序出错

【篇二:.net(c#)程序设计课后习题答案】

1填空题

(1)公共语言运行库 net framework

(2)210.78.60.19:8000/

(3) net framework

(4)统一资源定位符

2选择题

(1)b (2)a (3)d(4)c(5)d

3 思考题

.net framework把应用程序编译为独立于机器的中间语言。在执行时,中间语言要转换为本机可执行文件。并使其也可以在目标cpu上执行。所以说将应用程序编译为中间语言后就可以获得.net的平台无关性,.net framework是一个跨平台的平台。这虽然有些绕口,但这与微软所许诺的.net framework的跨平台特性是一致的。 4 操作题

(1)web页面设计:

习题-1 界面设计

(2)c#应用程序代码:

using system;

using c;

using ;

using ;

using ;

using trols;

public partial class _default :

{

protected void button1_click1(object sender, eventargs e) {

=;

}

}

第2章

1

(1)html htm

(2)有灵活性 呈现性 可访问性

2

(1)b (2)a

3

html

head

title新建网页 1/title

/head

body onload=showtime()

script

function showtime(){

now=new date();

display=lestring();

=display;

status=display;

settimeout(showtime(),1000)

}

/script

/body

/html

第3章

1

(1) 值 引用

(2) namespace

(3) class

2

(1)c(2) a(3) d (4) a

3

(1)

① 创建一个windows窗体应用程序。

② 程序界面如图习题-2所示,其中包括两个标签控件、两个文本框控件和一个按钮控件。

习题-2简单商场打折窗口界面

③ 添加按钮的事件代码。

namespace 商场打折器

{

public partial class form1 : form

{

public form1()

{

initializecomponent();

}

private void button1_click(object sender, eventargs e)

{

int i;

i = 32();

if (i = 500 i 1000)

{

= ng(i * 0.8);

}

else

{

if (i = 1000)

{

= ng(i * 0.7);

}

else

{

= ng(i);

}

}

}

}

}

(2)

①在vs2010中创建一个控制台应用程序。右键单击项目名称,在弹出的菜单中选择“添加”/“类”命令,创建一个class1类。在类中创建创建计算面积和总价的方法。 namespace 楼房面积和价格计算

{

class class1

{

public double area(double a, double b, int c)

{

return a*b*c;

}

public double wprice(double a, double b, int c,double d)

{

return a*b*c*d;

}

}

}

②在入口程序文件的代码中,添加如下代码。

class program

{

static void main(string[] args)

{

ine(请输入楼的长度:);

double l= (ne());

ine(请输入楼的宽度:);

double w = (ne());

ine(请输入楼层数:);

int c = (ne());

ine(请输入每平方米单价:);

double p = (ne());

class1 es = new class1();

ine(楼房的总面积为:{0}, (l, w, c));

ine(楼房的总价为:{0}, (l, w, c,p));

y();

}

}

③ 在入口程序中初始化对象es,通过参数传递调用相关方法求总面积和总价。编译并执行代码,运行结果如图习题-3所示。

习题-3 楼房的面积和房价的运行结果图

第5章 1

autopostback

(2)is ispostback

(3) web服务器控件 html服务器控件 验证服务器控件

(4) runat=server

(5) enable (6) password

(7) groupname属性

2

b (2)c (3)a (4)c (5)b

【篇三:asp程序设计习题答案】

概述 p18

(1)名词解释

静态网页:一般指用超文本标记语言html来实现,以htm或html做后缀名的网页文件,这些网页文本中不存在需要服务器段解释的代码;所有人浏览到的同一网页不会有任何区别。

动态网页:所谓动态网页,就是服务器端可以根据客户端的不同请求动态产生网页内容。它根据不同类型的客户端请求生成不同的页面,具有交互性。动态网页是用标准html代码和动态语言(如:asp,jsp,php,等)编写的。 服务器端:在万维网中提供网页服务的一端称为服务器端。

客户端:接受服务的一端称为客户端。

名称空间:所谓名称空间就是将多个提供相似功能的类组成逻辑上相关的一些单元,以便于管理和记忆。例如类包含了用来处理输入输出操作的类。 应用程序:在同一台电脑上,添加了虚拟目录的文件夹就被当成一个独立的网站对待,这个独立的网站就成为一个应用程序。所以用新建一个应用程序的时候,该软件会自动帮你生成一个文件夹,并且在iis中添加相应的虚拟目录。

(1)请比较静态网页和动态网页的工作原理:

静态网页和动态网页在客户端看来是除了发送请求是的后缀名外没有其它任何区别,主要是服务器端的区别。静态网页服务器在接收了客户端的请求后直接读取相应的网页文件返回给客户端,而动态网页服务器在接收到了客户端发来的请求后先找到相应文件然后根据相应参数将文件编译成标准的html代码,在返回给客户端。

第2章 程序设计基础 p62

(2)有100个和尚吃100个馒头,大和尚1人吃4个,小和尚4人吃1个,问有多少个大和尚和多少个小和尚?

sub page_load()

dim m,n,big_monk,small_monk as integer

=可能的组合是:br

for m=1 to 100

big_monk=m

small_monk=100-m

if 4*big_monk+small_monk/4.0=100 then

+=大和尚: big_monk 个,小和尚 small_monk

个;br

end if

next

end sub

第3章、服务器控件 p98

3、普通的html标记、html服务器控件、web服务器控件有什么联系和区别?

html服务器控件和web服务器控件都是从普通html发展过来的,只要给普通html代码添加id和runat=server属性就变成了html服务器控件,

web服务器控件是.net提供的一套全新的控件,它的设计合理使用更简便,但是目前还没有和html完全一一对应。推荐使用web服务器控件。

3、什么时候该使用html标记、html服务器控件、web服务器控件?在不需要和服务器端交互的程序中应该尽量使用普通html代码,这样会减轻服务器负担,在需要交互时尽量使用web服务器控件,实在没有可用的web服务器控件再考虑html控件。

第4章 内部对象p136

4、请叙述response的write方法的两种写法的区别及注意事项。

write的两种写法:%(“string”)%

and %=”string”%.见:p111

4、请将response的write方法与利用标签控件输出信息进行比较。

利用方法和label都可以输出信息,但是label相对比较容易控制输入的位置和格式。建议用label。

4、请叙述redirect方法、execute方法、tranfer方法、超链接四者的联系和区别。

redirect虽然是在服务器端运行,但是重定向实际上发生在客户端,但是execute和transfer的重定向是发生在服务器端的;execute的重定向完毕后会返回本页面继续执行下面的程序,但是transfer则不;超链接则是纯粹的客户端行为。

4、请叙述session对象和application对象各自的作用和最主要的区别。

session用来在不同的页面传递同一个人的信息,而application则在同一页面储存不同用户的信息。

第5章:数据库基础知识 p153

5、请叙述为什么要采用数据库来管理数据。

采用数据库来管理数据的理由:

数据库是目前最多使用的操作数据的方法,因为数据库用户不再需要知道数据的具体存放格式和方法,只要通过标准的数据查询语言来操作数据,这样的数据管理快速高效而且易于保存,备份和恢复。没有理由还是用前两种手段来管理数据。

5、在insert语句中,能否为自动编号字段赋值,为什么?

insert语句中,不需要为自动编号字段赋值,因为数据库会自动进行。

第6章 存取数据库 p182

6、某数据库程序可以显示记录,但不能添加记录,请问可能是什么原因? 可以显示但是不能添加记录最可能的原因就是程序对数据库文件只有读权限但是没有写权限。

6、更新记录时可否先删除、再插入记录?这样有什么缺点?(提示:自动编号字段的值可能会改变)

应该是“修改记录时可否……”;这样多做一步,服务器负担加重,而且用update可以只修改一项,但是先删除后添加就必修把每一项都添加了才能达到同样的效果,再者自动编号值会变化。

6、在查询记录的时候,如果只想显示部分字段的内容,应该怎么做?如果只想显示部分记录,又该怎么做?(提示:参考第五章的sql语句)

不要使用*,而使用 select 要查询的字段1,要查询的字段2 from

表 where 条件语句,就可以只查询部分字段了,只想显示部分记录,只要控制好查询条件就行了,或者在显示的时候做一下判断。

第7章 深入进行数据库编程 p235

7、如何在datagrid控件中加上验证控件?

可以使用templatecolumn自定义列来给datagrid添加控件验证功能。

7、如何用repeater控件虽更新和删除记录?

虽然repeater组件不支持更新和查询,但是可以通过linkbutton添加commandname 然后根据不同的command 进行最定义操作,这些操作当然可以包括更新和查询。

7、请比较 datagrid、datalist、repeater控件的联系和区别?

datagrid提供了最多的功能,如允许访问者对记录编辑、排序或分页。同时它也是最容易使用的,甚至于简单到只需要将之添加到页面中而不必额外编写代码。不过这些易用性是以性能的损失为代价

的。datagrid在三种控件中是效率最低的,特别是在使用web form的情况下。

通过使用模板,datalist提供了比datagrid更加优秀的界面效果。不过这需要以牺牲一定的开发时间为代价。为了添加排序、分页和编辑功能,程序员不得不花费比使用datagrid更多的精力来进行编码,虽然它的性能要优于datagrid。

最后,repeater允许对数据记录作最大限度的html定制。通常,使用repeater来显示数据记录比使用datagrid和datalist要耗费更长的开发时间。另外,它不支持内建的编辑、排序和分页功能。所幸的是,repeater在性能上要优于其它两种控件,特别是明显优于datagrid。

第8章 文件和文件夹操作 p258

8、请比较file 和fileinfo对象

比较file和fileinfo对象:file对象能实现对整个文件的移动,删除等更改;而fileinfo对象只能显示出某文件的信息,不能更改。

8、请比较分别用application对象、数据库和文本文件实现计数器的优劣。 application对象作计数器好处是方便快捷,但是会随着服务器的重新启动而清零;数据库可以记录很多登陆信息,不只是有几个人登陆,而且可以很方便的记录登陆时间,ip等等信息,但是查询数据库会消耗过多资源;用文本文件可以很方便的查看,更改,不利的一面是不能记录太多的信息。

程序题

第三章 服务器控件 p98

3、请开发一个简单的计算器,输入两个数后可以求两个数的和、差等。 sub enter_click(sender as object, e as eventargs)

e=false

dim i,j as integer

dim m as string

i=cint()

j=cint()

m=

dim result as integer

if m=+ then

result=i+j

else

result=i-j

end if

=i m j = result !

end sub

3、请综合使用本章讲授的控件,开发一个个人注册页面。要求输入用户名、用户姓名、密码、出生日期、电话、e-mail等个人信息,并要求进行必要的验证。如有可能,再加上提交个人照片栏目。正确提交后,显示输入的有关信息。 sub enter_click(sender as

object,e as eventargs)

dim error_1 as exception

if d=true then

e=false

隐藏注册填写栏目,显示注册成功信息。

dim strname,strpassword,stremail,strqq,strphone,strtext as

string strname=

strpassword=

stremail=

strqq=

strtext=

将信息存入数据库

try

dim conn as new

oledbconnection(provider=.4.0;data

dim strsql as string

strsql=insert into users

(user_name,user_password,user_email,user_qq,user_text)

values( strname , strpassword , stremail , strqq , strtext )

dim cmd as new oledbcommand(strsql,conn)

()

enonquery()

()

=brbr注册成功!thanks,p/从这里a

href=nt color=green登陆/font/a

catch error_1

=您输入的用户名已经存在 或者在保存数据时发生了其它错误,请你重新输入,具体错误为:p/ error_ng() end

try

end if

end sub

3、请开发一个简单的在线考试程序,可以包括若干道单选题、多选题、单击交卷按钮后就可以根据标准答案在线评分。

script language=vb runat=server

sub enter_click(byval sender as , byval e as

rgs) dim defen as integer

defen = 0

if edindex = 2 then

defen += 20

end if

if edindex = 3 then

defen += 20

end if

if edindex = 0 then

defen += 20

end if

if (0).selected and (1).selected

and (not (2).selected) and (not

(3).selected) thendefen += 20

end if

if (0).selected and (1).selected

and (2).selected and (not

(3).selected) thendefen += 20

end if

= font color=red您得了 + ng() + 分!/font end sub

第四章 内部对象 p136

4、请开发一个页面,显示来访者的ip地址。并判断:如果ip地址以202.118开头的,则显示欢迎信息;否则显示为非法用户,并终止程序。

sub page_load()

dim str as string

str=variables(remote_addr)

(您的ip地址为: str br)

定义一个数组来保存分割后的字符串

dim str_splited() as string

str_splited=(.)

if str_splited(0)=202 and str_splited(1)=118 then

(欢迎您的到来)