金牌笔试题 原老师版

1. 机试题

 

定义一个班级类,并定义相关的类成员。

public class Grade

要求班级类中包含一个泛型集合,用于存放学生集合。

List<Student> list=new List<Student>();

定义该类中的一个方法(DisplayStudent):要求:公有的,有一个Point类型的形参,

其功能是能以形参指定的位置为起点,一字排开显示所有的学生对象。

 

书写一个AddStudent()用于添加学生

需要动态生成控件喔!!!

代码如下:

 //Grade类
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Exam2
{
   public class Grade
    {
       List<Student> list = new List<Student>();
       public List<string> DisplayStudent(Point point)
       {
           int count = 0;
           List<string> newList = new List<string>();
           foreach (Student item in list)
           {
               count++;
               newList.Add(item.StuName + ":" + (point.X + 80 * count) + ":" + (point.Y + 50));
           }
           return newList;
       }
       //添加学生
       public void AddStudent(Student stu)
       {
           list.Add(stu);
       }
    }
}

//student类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Exam2
{
   public  class Student
    {
        public string StuName { get; set; }//学生姓名
    }
}

//主代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Exam2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Grade grade = new Grade();

            Student s1 = new Student();
            s1.StuName = "甄子丹";

            Student s2 = new Student();
            s2.StuName = "成龙";

            Student s3 = new Student();
            s3.StuName = "李小龙";

            Student s4 = new Student();
            s4.StuName = "吴京";

            Student s5 = new Student();
            s5.StuName = "洪金宝";

            Student s6 = new Student();
            s6.StuName = "元彪";

            grade.AddStudent(s1);
            grade.AddStudent(s2);

            grade.AddStudent(s3);
            grade.AddStudent(s4);

            grade.AddStudent(s5);
            grade.AddStudent(s6);

            List<string> list=grade.DisplayStudent(new Point(){X=1,Y=1});

            foreach (string item in list)
            {
                string[] temp = item.Split(‘:‘);
                string t1 = temp[0];

                int x = Convert.ToInt32(temp[1]);
                int y = Convert.ToInt32(temp[2]);
                Button btn = new Button();
                btn.Text = t1;
                btn.Size = new System.Drawing.Size(60, 25);
                btn.TextAlign = ContentAlignment.MiddleCenter;
                //设置位置
                btn.Location = new Point(20+x , 30+y );
                this.Controls.Add(btn);
            }

        }
    }
}

原文地址:https://www.cnblogs.com/SFHa/p/8760129.html

时间: 2024-07-30 02:00:30

金牌笔试题 原老师版的相关文章

(转)腾讯web前端开发的笔试题(记忆版)

面试职位的是web前端开发工程师.一小时的笔试题,一看全傻眼了.全都是网页设计和javascript的东西,悲剧了.做java的几百年不搞那东东了.现在凭记忆记录一些笔试题,本人亲面,拒绝网上的各种假题. 1.js中“5”+4=? 答案:54 2.js中void(0)=? 答案:undefined 3.js中NaN*4=? 答案:NaN 4.js中null*4.5=? 答案:0 5.js中alert(5*015===5.075)结果?原因? 6.js中13>>2=? -13>>2=

C/C++ 笔试题

/////转自http://blog.csdn.net/suxinpingtao51/article/details/8015147#userconsent# 微软亚洲技术中心的面试题!!! 1.进程和线程的差别. 线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行(3)拥有资源:进程是拥有资源的独立单位,线程不拥有系统资源,但可以访问

经典的阿里前端笔试题

1 请说明下面各种情况的执行结果,并注明产生对应结果的理由. function doSomething() { alert(this); } ① element.onclick = doSomething,点击element元素后. ② element.onclick = function() {doSomething()}, 点击element元素后. ③ 直接执行doSomething(). 参考答案: 1.element:调用执行时直接指向事件元素. 2.window:函数调用中的 thi

对Thoughtworks的有趣笔试题实践

记得2014年在网上看到Thoughtworks的一道笔试题,当时觉得挺有意思,但是没动手去写.这几天又在网上看到了,于是我抽了一点时间写了下,我把程序运行的结果跟网上的答案对了一下,应该是对的,但是总感觉我的代码应该可以改进的,但是我不知道怎么改进了. 原题是: FizzBuzzWhizz 你是一名体育老师,在某次课距离下课还有五分钟时,你决定搞一个游戏.此时有100名学生在上课.游戏的规则是: 1. 你首先说出三个不同的特殊数,要求必须是个位数,比如3.5.7. 2. 让所有学生拍成一队,然

iOS 笔试题-1

ios笔试题 有一篇面试题总结文章:http://www.onmoso.com/ios/356.html 原文地址:http://www.cnblogs.com/jiangshiyong/archive/2012/08/27/2657862.html 面试能力要求:精通iphone的UI开发,能熟练操作复杂表视图,熟练使用图层技术, 可以自定义UI控件,使用类别扩展系统控件功能; 擅长通讯技术,熟悉各种通信协议,精通xml, json, 二进制或其他形式的自定义解析,能架设服务器实现客户端与服务

嵌入式Linux C笔试题积累(转)

http://blog.csdn.net/h_armony/article/details/6764811 1.   嵌入式系统中断服务子程序(ISR) 中断是嵌入式系统中重要的组成部分,这导致了很 多编译开发商提供一种扩展—让标准C支持中断.具代表事实是,产生了一个新的关键字 __interrupt.下面的代码就使用了__interrupt关键字去定义了一个中断服务子程序(ISR),请评论一下这段代码的. __interrupt double compute_area (double radi

PHP笔试题总结1

---恢复内容开始--- 1.1    PHP中判断变量的相关函数 1.2    strlen( )与mb_strlen( )的作用分别是什么(新浪网技术部) strlen 和mb_strlen 都是用于获取字符串长度的,其中strlen只针对单字节编码字符,也就是说它计算的是字符串的总字节数,如果是多字节编码,如gbk和utf8,使用strlen得到的不是字符串的个数,而是该字符串的总字节数,可以使用mb_strlen获取其字符个数,使用mb_strlen要注意两点,一是要开启mbstring

(转载)c++笔试题汇总

今天去9City笔试才发现很多基本的东西都忘记了,以后面试前要看看这篇文章了!唉,老了! ①链表反转 单向链表的反转是一个经常被问到的一个面试题,也是一个非常基础的问题.比如一个链表是这样的: 1->2->3->4->5 通过反转后成为5->4->3->2->1. 最容易想到的方法遍历一遍链表,利用一个辅助指针,存储遍历过程中当前指针指向的下一个元素,然后将当前节点元素的指针反转后,利用已经存储的指针往后面继续遍历.源代码如下: struct linka {

白话经典算法系列之九 从归并排序到数列的逆序数对(微软笔试题)

首先来看看原题 微软2010年笔试题 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序数对.一个排列中逆序的总数就称为这个排列的逆序数.如{2,4,3,1}中,2和1,4和3,4和1,3和1是逆序数对,因此整个数组的逆序数对个数为4,现在给定一数组,要求统计出该数组的逆序数对个数. 计算数列的逆序数对个数最简单的方便就最从前向后依次统计每个数字与它后面的数字是否能组成逆序数对.代码如下: #include <stdio.h> int main()