码迷,mamicode.com
首页 > Windows程序 > 详细

C# 根据入学年份,得到学期列表(动态加载)

时间:2015-09-21 17:49:28      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:

这其实不算一个很高的技术,是我在帮同学写毕业设计时的一点小创造。

大家都知道,每个人的学期选择项是根据入学年份以及当前日期确定的,不是一个所有人都一样的,这就需要动态加载学期列表。

原理概述:

     大学默认为4年制,即最多有8个学期,数组长度应该为8

     入学当年应该有当年学期的下半学期此项列为数组[0]

     得到循环次数--当前年份-入学年份得到的数字×2得到这两年的学期数量(因为入学年默认有下个学期所以入学年学期在此项中没有位置所以-2;其次因为当前年存在,默认有当年的上半学期,所以加1,最终算法为(当前年份-入学年份)×2-1)

              得到需要动态加载的循环次数以后,进行循环赋值(再此需要判断上一个赋值项后缀是“上半学期”还是“下班学期”)

              最后跳出循环,判断当前年的月份(开学月一般为9月),大于9,则多添加一项当前年的下班学期

代码如下:

 1         /// <summary>
 2         /// 根据入学年份自动生成学期列表
 3         /// </summary>
 4         /// <param name="time">入学年份,形如××××年</param>
 5         /// <returns>学期数组</returns>
 6         public string[] XQ(string time)
 7         {
 8             string[] xq=new string[7];
 9             DateTime DQtime = DateTime.Now;
10             int year = DQtime.Year;
11             int Month = DQtime.Month;
12             int i,j;
13             xq[0] = time.Remove(4) + "下半学期";
14 
15             for (i=1,j=0; i <= ((year - (int.Parse(time.Remove(4)))) * 2)-1; i++)
16             {
17                 if (xq[i-1].Remove(0, 4) == "下半学期")
18                 {
19                     j++;
20                     xq[i] = (int.Parse(time.Remove(4)) + j).ToString() + "上半学期";
21                 }
22                 else
23                 {
24                     xq[i] = (int.Parse(time.Remove(4)) + j).ToString() + "下半学期";
25                 }
26             }
27 
28             if (Month >= 9)
29             {
30                 xq[i] = year.ToString() + "下半学期";
31             }
32             return xq;
33 
34         }

                                                       ————————留存笔记,多多指点!

C# 根据入学年份,得到学期列表(动态加载)

标签:

原文地址:http://www.cnblogs.com/hanxingziyuewuhua/p/4826481.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!