C#在ASP.NET4.5框架下的首次网页应用

运行效果预览:

 

 

 

 

 

看实践应用要求:

1.编写一个函数,用于计算1!+2!+3!+4!+5!,在控制台或页面输出运行结果。

2.在控制台或页面输出九九乘法表。

3.输入10个以内的整数,输出该组整数的降序排列,要求采用数组实现。

4.计算两个数的商,在控制台或页面输出结果,要求包含异常处理。

5.定义一个汽车类,该类具有重量和速度属性;再定义一个跑车类,该类继承汽车类的属性,并拥有自己的颜色属性;然后声明一个汽车类的对象和一个跑车类的对象,并把它们的属性输出到控制台上。

6.假设某动物园管理员每天需要给他所负责饲养的狮子、猴子和鸽子喂食。请用一个程序来模拟他喂食的过程。

要求:

(1)饲养员喂食时,不同动物执行不同的吃的功能,例如狮子吃肉、猴子吃香蕉、鸽子吃大米等。

(2)饲养员喂动物时,不能使用判断语句判断动物类型。

(3)使用虚方法或抽象方法实现喂养不同动物的多态,不能使用方法重载。

提示:需要建一个动物类,动物类有一个虚的或抽象的吃方法,动物类下面有几个子类,不同的子类重写父类的吃方法。饲养员类提供喂食方法。然后,在Main方法中一一调用吃的方法。

 

 

 

前端practice.aspx源码:

 

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="practice.aspx.cs" Inherits="practice" enableEventValidation="false"%>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head id="Head1" runat="server">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>   

 <title>实验二 C#程序设计练习</title>

<style type="text/css">

        button{

            width:120px;

            height:30px;

            background:#9933FA;

            color:#fff;

        }

        button:hover{

            background:#9A32CD;

        }

        div{

            text-align:center;

        }

        h2{

            text-align:center;

            color:red;

        }

        span{

            color:gray;

        }

        textarea{

            width:900px;

            height:400px;

            font-size:20px;

        }

    </style>

</head>

<body id="mybody">

    <form id="form1" runat="server">

        <br /><br />

    <div id="div_btn" runat="server">

        <button id="Button1" onserverclick="factorial" runat="server">factorial</button>

        <button id="Button2" onserverclick="multiplication" runat="server">multiplication</button>

        <button id="Button3" onserverclick="bubbleSort" runat="server">bubbleSort</button>

        <button id="Button4" onserverclick="division" runat="server">division</button>

        <button id="Button5" onserverclick="car" runat="server">car</button>

        <button id="Button6" onserverclick="zoo" runat="server">zoo</button>

    </div>

        <br />

        <div id="div_bubble" runat="server" EnableViewState="false" visible="false" >

            输入参数:<asp:TextBox id="TextNumber" runat="server" OnTextChanged="bubbleBtnClick" AutoPostBack ="true"></asp:TextBox>&nbsp;&nbsp;             <asp:Label ID="eMesg_bubble" runat="server">10个以内整数,空格分隔,Enter/Tap键执行排序</asp:Label><br /><br />

        </div>

        <div id="div_division" runat ="server" EnableViewState="false" visible="false" >

            输入被除数:<asp:TextBox id="textA" runat="server"></asp:TextBox> &nbsp;

            输入除数:<asp:TextBox id="textB" runat="server" OnTextChanged="divisionBtnClick" AutoPostBack ="true"></asp:TextBox>&nbsp;

            <asp:Label ID="eMesg_division" runat="server">Enter/Tap键执行计算</asp:Label><br /><br />

                 </div>

    <div id="div_view" runat="server" EnableViewState="false">

        </div>

        <div>

            <textarea id="displayArea" runat="server" rows="1" cols="1">输出结果将在此处显示.......</textarea>

        </div>

    </form>

</body>

</html>

 

后端practice.aspx.cs源码:

 

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

 

public partial class practice : System.Web.UI.Page {

    protected void Page_Load(object sender, EventArgs e)

    {

        Response.Write("<h2>单击按钮分别显示各个练习题代码运行结果</h2>");

        div_division.Visible = false;

        div_bubble.Visible = false;

    }

    protected void factorial(object sender, EventArgs e)

    {

        if (IsPostBack)

        {

            div_bubble.Visible = false;

            div_division.Visible = false;

            div_view.InnerHtml = "Follow will calculate the union of \"1!+2!+3!+4!+5!\":";

        }

        factorial calculate = new factorial();

        displayArea.InnerHtml = "1!+2!+3!+4!+5!=" + calculate.add().ToString();

    }

    protected void multiplication(object sender, EventArgs e)

    {

        if (IsPostBack)

        {

            div_bubble.Visible = false;             div_division.Visible = false;

        }

 

 

        int i, j;

        displayArea.InnerHtml = "";             //擦除前一次对textarea的写入记录

        for (i = 1; i < 10; i++)

        {

            for (j = 1; j <= i; j++)

            {

                displayArea.InnerHtml+=j+"*"+i+"="+(i * j)+"\t";

            }

            displayArea.InnerHtml += "\n";

        }

    }

    protected void bubbleSort(object sender, EventArgs e)

    {

        if (IsPostBack)

        {

            div_bubble.Visible = false;

            div_division.Visible = false;

        }

 

        div_bubble.Visible = true;

        displayArea.InnerHtml = "bubbleSort";

    }

    protected void bubbleBtnClick(object sender, EventArgs e)

    {

        if (IsPostBack)

        {

            div_bubble.Visible = false;

            div_division.Visible = false;

        }

        div_bubble.Visible = true;

                String str=TextNumber.Text;

 

        //String[] a=str.Split();//稍候再写,未完

        /*         int i = 0, j=1;         int[] number = new int[12];         while (i < str.Length)         {             if (str[i].Equals(' '))             {                 i++;             }             else             {                 number[j] = int.Parse (str[i].ToString ());             }         }         */

 

        displayArea.InnerHtml = "";     //擦除前一次textarea输出记录

        displayArea.InnerHtml =str;

    }

    protected void division(object sender, EventArgs e)

    {

        if (IsPostBack)

        {

            div_bubble.Visible = false;

            div_division.Visible = false;

        }

 

        div_division.Visible = true;

        displayArea.InnerHtml = "两数求商,输入被除数与除数后,按 Enter / Tap 键执行运算";

    }

    protected void divisionBtnClick(object sender,EventArgs e)

    {

        if (IsPostBack)

        {

            div_bubble.Visible = false;

            div_division.Visible = false;

        }

 

        float a = float.Parse(textA.Text);

        float b = float.Parse(textB.Text);

        float result;

        div_division.Visible = true;

        try

        {

            if (b == 0)

                throw new Exception("Error:DivideByZeroException[除数为零]");

            result = a / b;

            displayArea.InnerHtml = a + "/" + b + "=";

            displayArea.InnerHtml += a / b;

        }

        catch (Exception error)

        {

            eMesg_division.Text = error.Message;

        }

    }

    protected void car(object sender, EventArgs e)

    {

        if (IsPostBack)

        {  

           div_bubble.Visible = false;

            div_division.Visible = false;

        }

 

        car cardemo = new car();

        supercar supercardemo = new supercar();

        cardemo.set(2500, 180);

        displayArea.InnerHtml = "汽车类的质量:" + cardemo.weight + "Kg,汽车类的速度:" + cardemo.speed + "Km/h\n";

 

        supercardemo.color = "red";

        cardemo.set(2500, 180);

        supercardemo.set(2000, 250);

        displayArea.InnerHtml +="超跑类的重量:"+supercardemo.weight+"Kg,超跑类的速度:"+supercardemo.speed+"Km/h,超跑的颜色:"+supercardemo.color;     }

    protected void zoo(object sender, EventArgs e)

    {

        if (IsPostBack)

        {

            div_bubble.Visible = false;

            div_division.Visible = false;

        }

 

        feeder feederdemo = new feeder();

        animals animalsdemo = new animals();

 

        String food = "null";

        String foodmeat,foodbanana,foodrice,meat,banana,rice;

        food = "meat";

        foodmeat=feederdemo.feed(food);

        animalsdemo = new lion();

        meat=animalsdemo.eat();

        displayArea.InnerHtml = foodmeat + "\n" + meat + "\n";

 

        food = "banana";

        foodbanana=feederdemo.feed(food);

        animalsdemo = new monkey();

        banana=animalsdemo.eat();

        displayArea.InnerHtml += foodbanana + "\n" + banana + "\n";

 

        food = "rice";

        foodrice=feederdemo.feed(food);

        animalsdemo = new pigeon();

        rice=animalsdemo.eat();

        displayArea.InnerHtml += foodrice + "\n" + rice + "\n";

        //displayArea.InnerHtml = foodmeat + "\n" + meat + "\n" + foodbanana + "\n" + banana + "\n" + foodrice + "\n" + rice;

    }

}

 

 

 

//1!+2!+3!+4!+5!

class factorial {

    public int add()

    {

        int i = 1, temp = 1, sum = 0;

        for (; i < 6; i++)

        {

            temp = i * temp;

            sum = sum + temp;

        }

        return sum;

    }

}

 

//bubbleSort

/*  class bubbleSort     {

        public void sort(int n)

        {

            int i, j;

            for (i = 1; i < n; i++)

            {

                for (j = i; j < n; j++)

                {

                    if (a[i] > a[j])

                    {  

                       a[0] = a[i];                         a[i] = a[j];                         a[j] = a[0];

                    }

                }

            }

        }

    } */

 

 

 

//car class

class car

{

    public float weight;

    public float speed;

    public void set(float weight, float speed)

    {

         this.weight = weight;

        this.speed = speed;

    }

}

class supercar : car {

    public String color;

}

 

//zoo

    class feeder

    {

        public String feed(String food)

        {

            return (food);

        }

    }

    class animals

    {

        public virtual String eat()

        {

            return "feed animals with food!";

        }

    }

    class lion : animals

    {

        public override String eat()

        {

                return "\'狮子\'吃的是  meat  ......";

        }

    }

    class monkey : animals

    {

        public override String eat()

        {

                return "啾~,俺老孙来也,\'猴子\'就爱吃  banana  ......";

        }

    }

    class pigeon : animals

    {

        public override String eat()

        {

                return "听~,是\'鸽子\'在啄食  rice  ......";

        }

    }  

 

 

网页初次打开运行效果如图:


单击按钮分别显示各个练习题代码运行结果

 

factorial multiplication bubbleSort division car zoo

输出结果将在此处显示.......

转载于:https://www.cnblogs.com/360-782/p/ASP_NET.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/375447.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

javascript的变态位运算

javascript的变态位运算 var a "10" | 0; alert(a); alert (typeof a);结果为10,number。 这就是说这条语句可以将字符串转化为number。 如果&#xff1a;var a "sss" | 0;alert(a);结果为0.parseInt("sss")的话&#xff0c;会返回NaN。这个太…

CUDA: OpenCV requires enabled ‘cudev‘ module from ‘opencv_contrib

wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.X.X.zip unzip opencv_contrib.zip cmake -D OPENCV_EXTRA_MODULES_PATH~/opencv_contrib-4.X.X/modules参考

Android-Universal-Image-Loader三大组件DisplayImageOptions、ImageLoader、ImageLoaderConfiguration详解...

转 一、介绍 Android-Universal-Image-Loader是 一个开源的UI组件程序&#xff0c;该项目的目的是提供一个可重复使用的仪器为异步图像加载&#xff0c;缓存和显示。所以&#xff0c;如果你的程序里需要这个功能的话&#xff0c;那么不妨试试它。 因为已经封装好了一些类和方法…

营销类文章 SEO

如何有效的推广网站 适合没钱的中小站长 唐世军 a5总经理 博客 门户网站广告报价—以新浪为例 贵的一天30多万 碧蓝天营销学院 网络营销&#xff0c;你真的了解吗&#xff1f; SEO工具mozBar介绍、友情链接新参考mozRank 谈谈网络推广团队每天工作流程、工作标准、考核 请问安卓…

显示 grep 结果的指定行

用grep查找特定关键字&#xff0c;结果很多&#xff0c;但是有用的在中间的某几行&#xff0c;即grep得到结果之后再次过滤出指定几行。 首先查找指定行 grep -a "X" filename | grep -an "X"记下指定行&#xff0c;然后用awk打印指定行 grep -a "…

Java小知识

内部类分为: 成员内部类、静态嵌套类、方法内部类、匿名内部类。(1)、内部类仍然是一个独立的类&#xff0c;在编译之后内部类会被编译成独立的.class文件&#xff0c;但是前面冠以外部类的类名和$符号。(2)、内部类不能用普通的方式访问。成员变量成员变量静态成员变量。List遍…

C++ 设置线程名字

使用 std::thread #include <thread> #include <pthread.h>std::thread t(funs, args); pthread_setname_np(t.native_handle(), threadName);通过 pthread_create 创建 #define _GNU_SOURCE #include <pthread.h>pthread_t tid; pthread_create(&ti…

java学习_File属性处理

// TODO Auto-generated method stub File filenew File("newhello.txt"); //文件是否存在 System.out.println("文件是否存在&#xff1a;"file.exists()); //读取文件名称 System.out.println("读取文件名&#xff1a;"file.getName()); //读取…

pytest 基础讲解

文章目录 一、前置说明二、操作步骤1. 安装 pytest2. python 编写测试用例3. 在 pycharm 中使用 pytest 运行测试用例1)执行单条用例:点击用例前面的三角形执行,或在用例内部点击右键2)执行多条用例:在测试用例的外部区域,点击右键,批量执行所有用例4. 命令行中使用 pyt…

Myeclipse8.6中安装SVN插件

方法一&#xff1a; 1.打开HELP->MyEclipse Configuration Center&#xff0c;切换到SoftWare标签页。   2.点击Add Site 打开对话框&#xff0c;在对话框Name输入Svn&#xff0c;URL中输入&#xff1a;http://subclipse.tigris.org/update_1.6.x   3.在左边栏中找到Per…

初识EL

一、EL函数库介绍 由于在JSP页面中显示数据时&#xff0c;经常需要对显示的字符串进行处理&#xff0c;SUN公司针对于一些常见处理定义了一套EL函数库供开发者使用。  这些EL函数在JSTL开发包中进行描述&#xff0c;因此在JSP页面中使用SUN公司的EL函数库&#xff0c;需要导入…

ffmpeg 合并 flv 文件

// 转ts char cmd[1024] {\0}; sprintf(cmd, "ffmpeg -i %s -loglevel quiet -c copy -bsf:v h264_mp4toannexb -f mpegts %s", lastFlvFile.c_str(), lastTsFile.c_str()); system(cmd);// 合并ts char cmd[1024] {\0}; sprintf(cmd, "ffmpeg -i concat:\&qu…

怎么样的理解才是完全理解SQL(二)

如果我们从集合论&#xff08;关系代数&#xff09;的角度来看&#xff0c;一张数据库的表就是一组数据元的关系&#xff0c;而每个 SQL 语句会改变一种或数种关系&#xff0c;从而产生出新的数据元的关系&#xff08;即产生新的表&#xff09;。我们学到了什么&#xff1f;思考…

Scala学习笔记-环境搭建以及简单语法

关于环境的搭建&#xff0c;去官网下载JDK8和Scala的IDE就可以了&#xff0c;Scala的IDE是基于Eclipse的。 下面直接上代码&#xff1a; 这是项目目录&#xff1a; A是scala写的&#xff1a; package first import scala.collection.mutable.ListBufferobject A {def main(args…

UVa 12169 (枚举+扩展欧几里得) Disgruntled Judge

题意&#xff1a; 给出四个数T, a, b, x1,按公式生成序列 xi (a*xi-1 b) % 10001 (2 ≤ i ≤ 2T) 给出T和奇数项xi&#xff0c;输出偶数项xi 分析&#xff1a; 最简单的办法就是直接枚举a、b&#xff0c;看看与输入是否相符。 1 #include <cstdio>2 3 const int maxn …

使用Beautifulsoup爬取药智网数据

使用Beautifulsoup模块爬取药智网数据 Tips&#xff1a;1.爬取多页时&#xff0c;先用一页的做测试&#xff0c;要不然ip容易被封 2.自己常用的处理数据的方法&#xff1a; regre.compile(正则表达式) datareg.sub(要替换的字符串,data) 代码&#xff08;其实没多少&#xff09…

幂集 返回某集合的所有子集

幂集。编写一种方法&#xff0c;返回某集合的所有子集。集合中不包含重复的元素。 说明&#xff1a;解集不能包含重复的子集。 示例: 输入&#xff1a; nums [1,2,3]输出&#xff1a; [[3],[1],[2],[1,2,3],[1,3],[2,3],[1,2],[] ]来源&#xff1a;力扣&#xff08;LeetCode…

iOS标准时间与时间戳相互转换

本文转载至 http://blog.sina.com.cn/s/blog_a843a8850101dzqd.html [cpp] view plaincopy 设置时间显示格式: NSString* timeStr "2011-01-26 17:40:50"; NSDateFormatter *formatter [[[NSDateFormatter alloc] init] autorelease]; [formatter s…

JavaScript设计模式 Item 3 --封装

在JavaScript 中&#xff0c;并没有对抽象类和接口的支持。JavaScript 本身也是一门弱类型语言。在封装类型方面&#xff0c;JavaScript 没有能力&#xff0c;也没有必要做得更多。对于JavaScript 的设计模式实现来说&#xff0c;不区分类型是一种失色&#xff0c;也可以说是一…

【WCF安全】WCF 自定义授权[用户名+密码+x509证书]

1.x509证书制作(略) 2.直接贴代码 ----------------------------------------------------------------------服务端------------------------------------------------------------------------------------------- WCF服务 1 using System;2 using System.Collections.Generi…