用C#语言实现双色球程序

2020-07-04 02:35纪辉进
现代信息科技 2020年3期
关键词:项目驱动教学案例情境教学

摘  要:“C#程序设计”课程是计算机软件开发类专业ASP.NET方向的一门专业基础课程,软件是用来解决人在生活中遇到的实际问题。当前本科院校和高职院校教学中广泛使用的情景教学,项目教学,将生活中购买双色球彩票的过程转化为C#程序设计教学案例,既符合项目教学也符合情境教学的要求;以此激发学生的学习兴趣,提升教学效果,进而提升软件技术专业学生思考问题的能力和实践动手能力。

关键词:C#;项目驱动;情境教学;教学案例;双色球

中图分类号:TP311.1      文献标识码:A 文章编号:2096-4706(2020)03-0092-03

Abstract:“C# Program Design” course is a professional basic course in the direction of ASP.NET for computer software development major. Software is used to solve the practical problems people encounter in life. At present,situational teaching and project teaching are widely used in the teaching of undergraduate and vocational colleges. The process of buying the two color ball lottery in our life is transformed into a teaching case of C# programming,which meets the requirements of both project teaching and situational teaching;in order to stimulate studentsinterest in learning,improve the teaching effect,and then improve the ability of thinking and practice of software technology students.

Keywords:C#;project driven;situational teaching;teaching cases;two color ball

0  引  言

“C#程序设计”课程本科院校和高职院校相关专业都在开设,是计算机软件开发类专业ASP.NET方向的一门专业基础课程,也是一门专业核心课程。通过本门课程的学习可以让学生熟悉C#语言的开发环境,掌握C#语言的基本语法,建立面向过程和面向对象的程序设计思路,掌握面向过程和面向对象程序设计的基本方法,为后续课程奠定坚实的基础。力争通过一学期对“C#程序设计”课程对学习,巩固和提升学生的逻辑思维素质,加强学生的自主学习能力,提升实践动手能力和编码能力,积累一些实际项目经验。

目前很多“C#程序设计”教材,都在用一些经典的输出制定范围的奇偶数、求解整数的约数,找出两个整数的最大最小公约数,求解特定精度范围的数学常量值等,这些教学案例非常经典,但无法引起学生的学习兴趣,甚至让学生对学习感到枯燥乏味,对知识感到生涩难懂。

1  案例背景

C#是微软推出的面向对象的程序设计语言,语法简单高效,提供的组件功能强大且可编程,但好多教材上的案例学习起来枯燥,老师讲解起来照本宣科,一个一个知识点驗证式讲解,教学过程毫无新意,对学生毫无吸引力;而教学过程是一个充满互动的活动,不仅是老师教,还得学生学,更重要的是师生互动,不然会导致学生缺乏学习的积极性和主动性,教学效果甚微。

生活化案例能营造出轻松愉悦的课堂氛围,使学习不再枯燥乏味,学生不再埋头玩手机、注意力不集中,教师对重难点内容着重阐述、能通过学生表情了解学生疑惑所在;学生不理解的知识随时跟老师交流,在情境中师生相互进行引导与启发,增强师生互动,让学生学会主动学习,探求新知识,构建知识体系。

本文以双色球彩票为例,讨论如何用C#语言实现购买双色球彩票的算法代码。

2  项目设计

2.1  开发环境

开发语言:C#。

开发工具:Visual Studio 2012。

2.2  项目需求

双色球彩票奖项设置如表1所示。

双色球游戏规则是按照提示用户购买6个1到33之间不重复的红球号,购买1个1到16之间的蓝球号;摇奖产生6个开奖红球号和1个开奖蓝球号;程序运行界面如图1所示。

2.3  项目思路

红球和蓝球号码皆为整数,红球号又是多个,用整型数组分别存放购买的红球号和摇奖产生的开奖号,利用算法控制购买和摇奖号码在特定范围且不重复,比对购买红球号和开奖红球号得到红球买中个数,比对购买蓝球和开奖蓝球得到蓝球是否买中,根据比对结果公布中奖等次。

3  项目编码

3.1  程序主流程

因在各方法中都要访问红球和蓝球号,需要将数组声明为全局变量,先购买红球和蓝球号,摇奖产生开奖号,展示购买和开奖号码,公布中奖结果。

3.2  购买红球的代码

多次购买红球号,用for循环实现;用户输入的红球号可能超出范围,套用do循环进行验证,符合范围才可接收号码;用户输入的号码不能和前面已输入的号码重复,每次输入后要与已输入的号码比对,套用for循环控制;输入的号码不超出范围、不和已输入号码重复才赋值给整型数组;用户输入号码是随意的,购买完对红球数组用冒泡排序,按照从小到大的号码展示更直观,具体代码如下。

3.3  摇奖产生开奖红球的代码

摇出开奖红球号过程代码比购买红球过程代码略简,不存在输入超出范围的情况,控制好取随机数范围即可;每次随机号应跟前面生成随机号比对,若重复需重新取随机号;最后排序开奖号码。

3.4  比对中奖结果的代码

比对中奖结果要在购买了彩票号和摇奖生成开奖号之后进行,算法上先用购买的第一个红球号跟所有的开奖号比对,判断购买的第一个红球是否中了奖,在某个购买号逐个与开奖号比对过程中,因开奖号是从小到大排序的,如果比对到开奖号比这个购买号还大,就没有必要继续比下去了。

4  结  论

本项目案例来源于生活,程序需求浅显易懂;初见可能让学生摸不着头脑,待老师讲解后学生会觉得项目比较简单,在具体编写代码过程中又会碰到诸多问题;正是这种将复杂问题简化的项目案例才能激发学生的学习兴趣,培养坚忍不拔不服输的精神。实现技术中用到了变量的声明、赋值和引用;数组的声明、创建、赋值和引用;if-else语法结构的使用、for循环和do-while循环结构的使用,以及数组元素的遍历、随机数的获取等,在编码过程中让学生对知识的理解有所加深和巩固。

该项目代码规模130行左右,完成该项目会让学生体会到前所未有的成就感,该案例将复杂问题简化,从而激发学生学习编程的兴趣,增强了编程的乐趣,提高学生解决实际问题的能力,可以算得上程序设计类课程教学中的一个经典案例。

参考文献:

[1] 许春勤.《C#程序设计》的教学方法探讨 [J].电脑迷,2018(11):275.

[2] 张岩.C#程序设计课程教学改革研究 [J].科技经济导刊,2017(16):164.

[3] 吴小玲.C#程序设计课程教学改革探讨 [J].福建电脑,2017,33(11):182-183.

作者简介:纪辉进(1977-),男,汉族,湖北黄陂人,讲师,本科,主要研究方向:软件技术教学。

猜你喜欢
项目驱动教学案例情境教学
小学数学课堂导入技巧及案例分析
反转课堂模式与数学教学案例
促进初中化学定量观建构的教学案例
依托工作室的软件工程实践教学研究
基于物联网项目驱动的嵌入式系统教学改革的研究与实践
基于“红色之旅”项目驱动的《调酒与咖啡》工作室制人才培养机制探讨
高职酒店管理专业情境教学模式探究
浅析情境教学法在中职会计课堂中的应用价值
小学数学“反思型” 教学的探索与实践
浅谈语文课堂阅读教学