【C#】【平时作业】习题-4-流程控制

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
EMR Serverless StarRocks,5000CU*H 48000GB*H
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 【C#】【平时作业】习题-4-流程控制

T1

创建一个Windows应用程序,先输入年龄值,再判断是否大于18,最后显示判断结果,运行效果如图所示。

q6.png

提示:

注意保持逻辑完整;

引用数据需要明确出处。

【程序代码】

private void Form1_Load(object sender, EventArgs e)
        {
            textBox1.MaxLength = 4;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                String str = textBox1.Text;
                Double age = double.Parse(str);
                if (age <= 0 || age > 120)
                {
                    lb_show.Text = "年龄不合理!请输入正确的年龄";
                }
                else if (age < 18)
                {
                    lb_show.Text = "该生未满18";
                }
                else
                {
                    lb_show.Text = "该生已满18";
                }
            }
            catch(Exception)
            {
                lb_show.Text= "年龄参数错误!请输入正确的年龄";
             }
            finally
            {
            }
        }

【程序截图】


q5.png

q4.png

q3.png

q2.png

q1.png

T2

创建一个Windows应用程序,使用switch语句来计算不同服装的应付款,其中,1类服装300元/件,2类服装450元/件,3类服装2000元/件。运行效果如图所示

q5.jpg

【程序代码】

private void Form1_Load(object sender, EventArgs e)
        {
            textBox1.MaxLength = 1;
            textBox2.MaxLength = 5;
        }
  private void button1_Click(object sender, EventArgs e)
        {
            Double result = 0;
            if (textBox1.Text == "")
            {
                label4.Text = "[错误]未输入类别代码";
            }
            else 
            {
                if (textBox2.Text == "")
                {
                    label4.Text = "[错误]未输入服装数量";
                }
                else 
                {
                    if (!int.TryParse(textBox1.Text, out int code))
                    {
                        label4.Text = "[错误]类别代码错误";
                    }
                    else 
                    {
                        if (!int.TryParse(textBox2.Text, out int num))
                        {
                            label4.Text = "[错误]服装数量错误";
                        }
                        else
                        {
                            switch (code) 
                            {
                                case 1:
                                    {
                                        result = 300 * num;
                                        label4.Text = "应付款:"+result.ToString()+"元。谢谢惠顾!";
                                    }
                                    break;
                                case 2:
                                    { 
                                        result = 450 * num;
                                        label4.Text = "应付款:" + result.ToString() + "元。谢谢惠顾!";
                                    } break;
                                case 3:
                                    { 
                                        result = 2000 * num;
                                        label4.Text = "应付款:" + result.ToString() + "元。谢谢惠顾!";
                                    }
                                    break;
                                default:
                                    {
                                        label4.Text = "[错误]无此类别衣物";
                                    }
                                    break;
                            }
                        }
                    }
                }
            }
        }

【程序截图】

q4.png

q3.png

q2.png

q1.png

T3

设计程序,实现将学生的百分制成绩转换为对应的等级成绩。

提示:界面?

等级标准?

类别与分数的关系? 分数/10,然后取整

【程序代码】

private void Form1_Load(object sender, EventArgs e)
        {
            tbEnter1.MaxLength = 5;
        }
private void button2_Click(object sender, EventArgs e)
        {
            string scj = tbEnter1.Text.Trim();
            try
            {
                double cj = Convert.ToDouble(scj);//非法数据产生的异常: System.FormatException  //数据过大的异常 OverflowException
                if (cj < 0 || cj > 100)
                {
                    lblResult.Text = "数据错误,您输入的范围不在合理范围内。请输入一个正确的成绩,范围为0-100";
                }
                else if (cj >= 90)
                {
                    lblResult.Text = "成绩为" + cj.ToString() + " 等级为:A";
                }
                else if (cj >= 80)
                {
                    lblResult.Text = "成绩为" + cj.ToString() + " 等级为:B";
                }
                else if (cj >= 70)
                {
                    lblResult.Text = "成绩为" + cj.ToString() + " 等级为:C";
                }
                else if (cj >= 60)
                {
                    lblResult.Text = "成绩为" + cj.ToString() + " 等级为:D";
                }
                else
                {
                    lblResult.Text = "成绩为" + cj.ToString() + " 等级为:E";
                }
            }
            catch (FormatException)
            {
                lblResult.Text = "数据错误,您输入的不是数字。请输入一个正确的成绩,范围为0-100";
            }
            finally
            {
                ;
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            string scj = tbEnter1.Text.Trim();
            try
            {
                double cj = Convert.ToDouble(scj);//非法数据产生的异常: System.FormatException
                if (cj < 0 || cj > 100)
                {
                    lblResult.Text = "数据错误,您输入的范围不在合理范围内。请输入一个正确的成绩,范围为0-100";
                }
                else
                {
                    int a = (int)(cj / 10);
                    switch (a)
                    {
                        case 10:
                            {
                                lblResult.Text = "成绩为" + cj.ToString() + " 等级为:优秀";
                            }
                            break;
                        case 9:
                            {
                                lblResult.Text = "成绩为" + cj.ToString() + " 等级为:优秀";
                            }
                            break;
                        case 8:
                            {
                                lblResult.Text = "成绩为" + cj.ToString() + " 等级为:良好";
                            }
                            break;
                        case 7:
                            {
                                lblResult.Text = "成绩为" + cj.ToString() + " 等级为:中等";
                            }
                            break;
                        case 6:
                            {
                                lblResult.Text = "成绩为" + cj.ToString() + " 等级为:及格";
                            }
                            break;
                        default:
                            {
                                lblResult.Text = "成绩为" + cj.ToString() + " 等级为:不及格";
                            }
                            break;
                    }
                }
            }
            catch (FormatException)
            {
                lblResult.Text = "数据错误,您输入的不是数字。请输入一个正确的成绩,范围为0-100";
            }
            finally
            {
                ;
            }
        }

【程序截图】

q6.png

q5.png

q4.png

q3.png

q2.png

q1.png

T4/T5

T4:求200以内的奇数之和?

T5:求200以内的偶数之和?

要求:分别使用while/do-while/for

【程序代码】

//200以内的奇数和 | while
        private void button1_Click(object sender, EventArgs e)
        {
            int i = 1;
            int result = 0;
            while(i <= 200)
             {
                if (i % 2 != 0) {
                    result += i;
                }
                i++;
            }
            textBox1.Text = "答案为:" + result.ToString();
        }
        //200以内的奇数和 | do/while
        private void button4_Click(object sender, EventArgs e)
        {
            int i = 200;
            int result = 0;
            do
            {
                if (i % 2 != 0)
                {
                    result += i;
                }
                i--;
            } while (i > 0);
            textBox1.Text = "答案为:" + result.ToString();
        }
        //200以内的奇数和 | for
        private void button5_Click(object sender, EventArgs e)
        {
            int result = 0;
            for(int i = 0; i <= 200; i++)
            {
                if (i % 2 != 0)
                {
                    result += i;
                }
            }
            textBox1.Text = "答案为:" + result.ToString();
        }
        //200以内的偶数和 | while
        private void button2_Click(object sender, EventArgs e)
        {
            int i = 1;
            int result = 0;
            while (i <= 200)
            {
                if (i % 2 == 0)
                {
                    result += i;
                }
                i++;
            }
            textBox1.Text = "答案为:" + result.ToString();
        }
        //200以内的偶数和 | do/while
        private void button3_Click(object sender, EventArgs e)
        {
            int i = 200;
            int result = 0;
            do
            {
                if (i % 2 == 0)
                {
                    result += i;
                }
                i--;
            } while (i > 0);
            textBox1.Text = "答案为:" + result.ToString();
        }
        //200以内的偶数和 | for
        private void button6_Click(object sender, EventArgs e)
        {
            int result = 0;
            for (int i = 0; i <= 200; i++)
            {
                if (i % 2 == 0)
                {
                    result += i;
                }
            }
            textBox1.Text = "答案为:" + result.ToString();
        }

【程序截图】

qq.png

q6.png

q5.png

T6

一个百万富翁遇到一个陌生人,陌生人找他谈一个换钱的计划,该项计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我仍给你十万元,你给我二分钱,第三天我仍给你十万元,你给我四分钱,… ,你每天给我的钱是前一天的两倍,直到满一个月(30天),百万富翁很高兴,欣然接受了这个契约。请编写一个程序计算这一个月中陌生人给了百万富翁多少钱,百万富翁给陌生人多少钱。

分析:

陌生人给富翁: 3010万=300万

富翁给陌生人: 1 2 4 8 16 32 每天是前一天的两倍

He= 1 +  2 +  4 +  8 +  16+  32 每天是前一天的两倍
int he=0;
int meitiandeqian=1
for(int tianshu =1;tianshu <=30;tianshu=tianshu+1)
{
  He=he+ meitiandeqian;
  Meitiandeqian=2*meitiandeqian;
}

要求输出 he

q4.png

【程序代码】

private void Form1_Load(object sender, EventArgs e)
        {
            decimal he =0;
            decimal meitiandeqian = 0.01M;
            for(int tianshu = 1; tianshu <= 30; tianshu = tianshu + 1)
            {
                he = he + meitiandeqian;
                meitiandeqian = 2 * meitiandeqian;
            }
            label1.Text = "陌生人给了富翁" + (100000 * 30).ToString() + "\n富翁给了陌生人" + he.ToString();
        }

【程序截图】

q1.png

T7

创建一个Windows应用程序,打印如图所示的九九乘法表。

q2.png

【程序代码】

private void button1_Click(object sender, EventArgs e)
        {
            tb_show.Text = "";
            for(int i=1;i<=9;i++)
            {
                for(int j = 1; j <= i; j++)
                {
                    tb_show.Text += i.ToString() + "X" + j.ToString() + "=" + (i * j).ToString()+"\t";
                }
                tb_show.Text += Environment.NewLine;
            }
        }

【程序截图】

q1.png


版 权 声 明

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
6月前
|
存储 安全 编译器
《C#程序设计》期末大作业复习答案
《C#程序设计》期末大作业复习答案
|
6月前
|
存储 安全 C#
C#全新一代医院手术麻醉系统围术期全流程源码
手术麻醉临床信息系统有着完善的临床业务功能,能够涵盖整个围术期的工作,能够采集、汇总、存储、处理、展现所有的临床诊疗资料。通过该系统的实施,能够规范麻醉科的工作流程,实现麻醉手术过程的信息数字化,自动生成麻醉的各种医疗文书,完成共享HIS、LIS、PACS和 EMR等手术患者信息,从而提高麻醉、手术工作的管理水平。
37 3
|
C# 容器
【C#本质论 四】操作符和控制流程
【C#本质论 四】操作符和控制流程
89 0
【C#本质论 四】操作符和控制流程
|
存储 前端开发 C#
【C#编程最佳实践 八】MVC流程实践
【C#编程最佳实践 八】MVC流程实践
108 0
【C#编程最佳实践 八】MVC流程实践
|
XML 存储 SQL
【C#编程最佳实践 五】项目与代码流程实践
【C#编程最佳实践 五】项目与代码流程实践
169 0
【C#编程最佳实践 五】项目与代码流程实践
|
存储 编译器 C#
|
存储 测试技术 C#
C#编程流程控制与集合类型(一)
C#编程流程控制与集合类型
C#编程流程控制与集合类型(一)
C#面向对象程序设计课程实验一:实验名称:C#语言基础、程序流程控制
C#面向对象程序设计课程实验一:实验名称:C#语言基础、程序流程控制
C#面向对象程序设计课程实验一:实验名称:C#语言基础、程序流程控制
【C#】【平时作业】习题-2-数据类型运算符表达式
【C#】【平时作业】习题-2-数据类型运算符表达式
97 0
【C#】【平时作业】习题-2-数据类型运算符表达式
【C#】【平时作业】习题-8-异常处理
【C#】【平时作业】习题-8-异常处理
75 0
【C#】【平时作业】习题-8-异常处理