问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求大量C#的练习!(有追分)

发布网友 发布时间:2022-04-08 23:19

我来回答

3个回答

热心网友 时间:2022-04-09 00:48

结账吧,呵呵!

1. 填空:
(1)面向对象的语言具有________性、_________性、________性。
(2)能用foreach遍历访问的对象需要实现 ________________接口或声明________________方法的类型。
(3)列举ADO.net中的五个主要对象_______________、_____________、_______________、_______________、_________________。

2. 不定项选择:
(1) 以下叙述正确的是:
A. 接口中可以有虚方法。 B. 一个类可以实现多个接口。
C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。
(2) 从数据库读取记录,你可能用到的方法有:
A. ExecuteNonQuery B. ExecuteScalar
C. Fill D. ExecuteReader
3. 简述 private、 protected、 public、 internal 修饰符的访问权限。
4. 写出一条Sql语句: 取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID可能不是连续的。)
5 .列举ASP.NET 页面之间传递值的几种方式。
6. 写出程序的输出结果
class Class1 {
private string str = "Class1.str";
private int i = 0;
static void StringConvert(string str) {
str = "string being converted.";
}
static void StringConvert(Class1 c) {
c.str = "string being converted.";
}
static void Add(int i) {
i++;
}
static void AddWithRef(ref int i) {
i++;
}
static void Main() {
int i1 = 10;
int i2 = 20;
string str = "str";
Class1 c = new Class1();
Add(i1);
AddWithRef(ref i2);
Add(c.i);
StringConvert(str);
StringConvert(c);
Console.WriteLine(i1);
Console.WriteLine(i2);
Console.WriteLine(c.i);
Console.WriteLine(str);
Console.WriteLine(c.str);
}
}
7.写出程序的输出结果
public abstract class A
{
public A()
{
Console.WriteLine('A');
}
public virtual void Fun()
{
Console.WriteLine("A.Fun()");
}
}
public class B: A
{
public B()
{
Console.WriteLine('B');
}
public new void Fun()
{
Console.WriteLine("B.Fun()");
}
public static void Main()
{
A a = new B();
a.Fun();
}
}
8. 写出程序的输出结果:
public class A
{
public virtual void Fun1(int i)
{
Console.WriteLine(i);
}
public void Fun2(A a)
{
a.Fun1(1);
Fun1(5);
}
}
public class B : A
{
public override void Fun1(int i)
{
base.Fun1 (i + 1);
}
public static void Main()
{
B b = new B();
A a = new A();
a.Fun2(b);
b.Fun2(a);
}
}

9. 一列数的规则如下: 1、1、2、3、5、8、13、21、34......
求第30位数是多少, 用递归算法实现。(C#语言)
10. 程序设计: 猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒。(C#语言)
要求: 1.要有联动性,老鼠和主人的行为是被动的。
2.考虑可扩展性,猫的叫声可能引起其他联动效应。

参*:
1. (1) 继承性、封装性、多态性。(考基本概念)
(2) IEnumerable 、 GetEnumerator (对foreach机制的理解,本来不想出这题的,凑分)
(3) ... (送分题, 对ADO.net的了解)
评分标准:一空1分,满分10分。

2. (1) B、C (考对接口的理解) (2) B、C、D (考查对ADO.net的熟练程度)
评分标准: 一题5分,不选或者错选均不得分。漏选得2分。满分10分。

3. . private : 私有成员, 在类的内部才可以访问。
protected : 保护成员,该类内部和继承类中可以访问。
public : 公共成员,完全公开,没有访问*。
internal: 在同一命名空间内可以访问。
评分标准:答对1题2分,2题5分,3题7分。全对10分。 (送分题)

4. 解1: select top 10 * from A where id not in (select top 30 id from A)
解2: select top 10 * from A where id >(select max(id) from (select top 30 id from A )as A)
评分标准: 写对即10分。(答案不唯一,datagrid 分页可能需要用到)

5. 1.使用QueryString, 如....?id=1; response. Redirect()....
2.使用Session变量
3.使用Server.Transfer
....
评分标准: 答对1点得3分, 两点7分, 3点10分。
6. (考查值引用和对象引用)
10
21
0
str
string being converted.
评分标准:答对一点得2分,满分10分。
7. A
B
A.Fun()
评分标准: 写出A.B 得5分,写出A.Fun()得5分,满分10分。
(考查在继承类中构造函数, 以及new 方法, )

8. 2
5
1
6
评分标准: 答对一点得2分,两点得5分,3点得7分。全对得10分。
(一些人做这题,头都晕了.... ^_^ )

9.
public class MainClass
{
public static void Main()
{
Console.WriteLine(Foo(30));
}
public static int Foo(int i)
{
if (i <= 0)
return 0;
else if(i >0 &&i <= 2)
return 1;
else return Foo(i -1) + Foo(i - 2);
}
}
评分标准: 写出return Foo(i -1) + Foo(i - 2); 得5分。
写出if(i >0 &&i <= 2) return 1; 得5分。
方法参数过多需要扣分(扣除分数 = 参数个数 - 1)
不用递归算法扣5分
(递归算法在树结构建立等方面比较常用)

10
要点:1. 联动效果,运行代码只要执行Cat.Cryed()方法。2. 对老鼠和主人进行抽象
评分标准: <1>.构造出Cat、Mouse、Master三个类,并能使程序运行(2分)
<2>从Mouse和Master中提取抽象(5分)
<3>联动效应,只要执行Cat.Cryed()就可以使老鼠逃跑,主人惊醒。(3分)
public interface Observer
{
void Response(); //观察者的响应,如是老鼠见到猫的反映
}
public interface Subject
{
void AimAt(Observer obs); //针对哪些观察者,这里指猫的要扑捉的对象---老鼠
}
public class Mouse : Observer
{
private string name;
public Mouse(string name, Subject subj)
{
this.name = name;
subj.AimAt(this);
}

public void Response()
{
Console.WriteLine(name + "attempt to escape!");
}
}
public class Master : Observer
{
public Master(Subject subj)
{
subj.AimAt(this);
}

public void Response()
{
Console.WriteLine("Host waken!");
}
}

public class Cat : Subject
{
private ArrayList observers;
public Cat()
{
this.observers = new ArrayList();
}
public void AimAt(Observer obs)
{
this.observers.Add(obs);
}
public void Cry()
{
Console.WriteLine("Cat cryed!");
foreach (Observer obs in this.observers)
{
obs.Response();
}
}
}
class MainClass
{
static void Main(string[] args)
{
Cat cat = new Cat();
Mouse mouse1 = new Mouse("mouse1", cat);
Mouse mouse2 = new Mouse("mouse2", cat);
Master master = new Master(cat);
cat.Cry();
}
}
//---------------------------------------------------------------------------------------------
设计方法二: 使用event -- delegate设计..
public delegate void SubEventHandler();
public abstract class Subject
{
public event SubEventHandler SubEvent;
protected void FireAway()
{
if (this.SubEvent != null)
this.SubEvent();
}
}
public class Cat : Subject
{
public void Cry()
{
Console.WriteLine("cat cryed.");
this.FireAway();
}
}
public abstract class Observer
{
public Observer(Subject sub)
{
sub.SubEvent += new SubEventHandler(Response);
}
public abstract void Response();
}
public class Mouse : Observer
{
private string name;
public Mouse(string name, Subject sub) : base(sub)
{
this.name = name;
}
public override void Response()
{
Console.WriteLine(name + "attempt to escape!");
}
}
public class Master : Observer
{
public Master(Subject sub) : base(sub){}
public override void Response()
{
Console.WriteLine("host waken");
}
}
class Class1
{
static void Main(string[] args)
{
Cat cat = new Cat();
Mouse mouse1 = new Mouse("mouse1", cat);
Mouse mouse2 = new Mouse("mouse2", cat);
Master master = new Master(cat);
cat.Cry();
}
}

热心网友 时间:2022-04-09 02:06

我这儿倒有大约200道的样子
不过全是编程题,
1、从键盘输入一个正整数,按数字的相反顺序输出。

2、从键盘上输入两个整数,由用户回答它们的和,差,积,商和取余运算结果,并统计出正确答案的个数。

3、写一条for语句,计数条件为n从100~200,步长为2;然后再用while语句实现同样的循环。
......
越往下就越复杂一点。
不知道你需不需要,需要的话,给个邮箱什么的。(是一个word文档,我发给你)

热心网友 时间:2022-04-09 03:41

给你个偶现在的实战程序,windows应用程序开发的,你有兴趣练练手。
关于C#绘图的。某个不规则断面,已知断面内某点的位置(近似中心点),从此点每隔1度测量此点到断面壁的长度,得此长度值,以此类推共得出360个长度值。让你根据这360个长度值画出此断面的图像。做出来欢迎交流下啊。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
泰迪必备用品有哪些? 养泰迪狗新手需要准备什么东西 谁知道白色泰迪狗的生活用品需要哪些? 美国什么选举时间 离西双版纳最近的地州必去景点 技嘉945GCM-S2L ( 英特尔 945G )主板配什么显卡好 5年的台式电脑了想更新配置,反应速度有点慢。该如何提高,求大神指教... e2160超频设置 如何将多个excel表格合并成一个如何把多个工作簿合并成一个excel 上海社保最低比例是多少钱 CDR存储时提示“临时驱动器或输出驱动器已满”。 在cdr12里面保存文件老是出现储存空间不足怎么办? CorelDRAW X4老是显示内存不足。要么就是临时驱动器已满。是什么原因呢? CorelDRAW X4 做了一晚上的文件点击保存,提示内存不足,就跳了,文件也没了。 在用coreldraw x6时 保存时说内存不足,再次打开里面是空白,怎么办啊? 在CorelDRAW 9里面存文件时总显示内存不足是怎么回事 怎样才能测试自己的EQ 什么软件可以查询阿迪闪电鞋子真假 属龙的六个合生肖是什么 要怎样才能测试男友爱不爱自己? 有什么测试鞋子正品的软件 怎样才能测试一个人有没有精神病? 广州大学城的邮编是多少? 广东省广州市,番禺区北亭村青云大街28巷8号337邮编查询? 炎亭镇镇长是谁 联想ibm笔记本ps修照片用哪款好? thinkpad t450s是fhd的高分屏好还是1600x900就行 thinkpad t450更换ips屏幕字体小怎么办 thinkpad t450s行货有没有ips屏 thinkpad t450重量多少 诛仙3涅羽入仙还是佛 涅羽带金身还是法身 诛仙3涅羽和逐霜那个好? 诛仙涅羽简单吗 柠檬梅,车厘子,纪州青梅,甘草黄皮,炭烧梅,西梅,珍珠梅,蜜炼枇杷,多脾梨,还有情人梅 一点点奶茶店的柠檬梅子是用柠檬汁加梅子做的吗?里面有没有梅汁呢? 诛仙3新职业涅羽门贡在哪里捐赠 诛仙3涅羽主线任务刷完三个身世也刷完了为啥接不到飞升?- 问一问 仙涅羽厉害还是佛涅羽厉害 诛仙三佛涅羽怎么打输出- 问一问 新武林外传 114级每个阶段的涅羽 各有多少技能点!~ 退伍军人进事业单位有什么要求吗? 柠檬话梅怎么做 柠檬梅汁黑枣的做法 新武林外传中涅盘与羽化的全部介绍不是过程,顺便说一下双职业,还有,如果我是魔族涅羽后会变*族菜鸟 柠檬梅汁梅枣怎么做法 诛仙3涅羽主线任务刷完三个身世也刷完了为啥接不到飞升? 为什么有人一看见柠檬和梅就流口水? 柠檬梅子鸡怎样做? 柠檬梅子辣椒酱,你吃过吗?