程序设计工具与环境试题集23792.docx
《程序设计工具与环境试题集23792.docx》由会员分享,可在线阅读,更多相关《程序设计工具与环境试题集23792.docx(82页珍藏版)》请在冰点文库上搜索。
程序设计工具与环境试题集23792
第一章.Net概述
一.填空
1.C#语言不允许(),从而避免了类型定义的混乱。
2.在()状态下,C#语言不能使用指针,而是使用委托(Delegate)来模拟指针的功
能。
3.代码编辑器窗口主要分为3个分区,包括()、指示器边距和选定内容边距。
4.在VisualStudio2008中,用户可以从安装在计算机上的本地帮助以及Internet上的(
)访问产品文档。
5.类设计器提供了三种功能,分别是设计、()和重构类和类型。
6.解决方案是一个逻辑上的容器,包含构成应用程序的()和其它文件。
7.C#语言虽然从C/C++语言发展而来,但是它完全摒弃了C/C++语言中容易出错的指针和多
重继承等概念,是一种()的,类型安全的语言。
8.在VisualStudio2008中,使用“解决方案资源管理器”窗口来()。
9.“服务器资源管理器”窗口中的每个树节点代表一个()。
10.“工具箱”窗口中包含了许多(),使用户在应用程序中方便快捷地使用它
们。
解答:
1.多重继承
2.托管
3.代码编辑区
4.联机帮助
5.可视化
6.项目
7.完全面向对象
8.管理和监视项目
9.服务器
10.可用控件
二.简答题
1.C#语言的有何主要特点。
2.C#语言的有何主要功能。
3.C#集成开发环境主要有哪些窗口?
4.解决方案资源管理器窗口的功能。
5.服务器资源管理器窗口的功能。
6.属性窗口的功能。
7.工具箱窗口的功能。
8.错误列表窗口的功能。
9.什么是解决方案?
10.解决方案和项目之间的关系。
解答:
1.语法简洁;面向对象;与Web紧密结合;完全的安全性和错误处理;灵活性和兼容性。
2.设计Windows应用程序、设计控制台应用程序、设计ASP.NETWeb应用程序。
3.解决方案资源管理器窗口、服务器资源管理器窗口、工具箱窗口、属性窗口、“类视图
”窗口、代码编辑器窗口、任务列表窗口、错误列表窗口。
4.使用“解决方案资源管理器”窗口来管理和监视项目。
5.“服务器资源管理器”窗口负责维护数据连接,可对服务器进行管理。
6.在“属性”窗口可以编辑和查看控件、项目或类的特征属性,以及在设计时查看并修改
窗体设计器中被选中对象的属性和事件。
7.在“工具箱”窗口中包含了许多可用控件,使用户在应用程序中方便快捷地使用使用这
些控件。
8.显示在编写代码、程序编译过程和程序运行时发生的错误。
9.解决方案是一个逻辑上的容器,包含构成应用程序的项目和其它文件。
10.包含于被包含的关系;一个解决方案可以包含一个或多个项目。
三.读程序题
解答:
四.程序题1
解答:
五.程序题2
解答:
六.判断
1.C#语言主要面向Windows开发环境进行编程。
2.C#语言完全支持面向对象编程。
3..NET开发的语言无关性依赖于其它运行库的执行环境,称为COM运行库。
4.C#从C/C++发展而来,但更具优势,如开发Web应用程序和NT服务等。
5.C#语法简单,编程灵活,但功能有限,不适合开发Windows应用程序。
6.C#拥有对.NET基类库的完全访问权,并易于访问WindowsAPI。
7.VisualStudio2008是一套完整的开发工具,可轻松创建混合语言解决方案。
8.在VisualStudio2008环境中,VisualBasic、C#和VisualC++分别使用不同的集成开
发环境。
9.在VisualStudio2008起始页中不可以打开已有的项目或创建新项目。
10.“服务器资源管理器”主要对服务器的进行管理,并不负责维护数据连接。
解答:
1.X
2.√
3.X
4.√
5.X
6.√
7.√
8.X
9.X
10.X
第二章C#语言基础
一.填空
1.在C#语言中,每条语句都以()结束。
2.在C#语言中,使用()进行单行注释。
3.在C#语言中,使用()进行多行注释。
4.在C#语言规定变量在使用之前必须先()后使用。
5.在C#语言表达式中,可通过()改变运算符的运算顺序,使表达式更清晰易懂
。
6.在C#语言中,使用()关键字声明符号常量。
7.在代码中,明确指示将某一数据类型转换为另一种数据类型称为()。
8.在C#语言中,系统命名空间使用()关键字导入。
9.
10.
11.将命题“a是小于正整数b的偶数”用C#表达式可以表示为()。
12.循环语句“for(inti=30;i>=10;i=i-3)”的循环次数为()。
13.对于do-while循环结构,当while语句中的条件表达式的值为()时结束循环
。
14.跳转语句中的()语句用于循环结构中,表示仅从当前循环迭代中退出,然后
执行下一次迭代循环。
15.跳转语句中的()语句可以将程序控制直接转移到标号指定的语句。
16.在C#类型转换中,不存在向()类型的隐式转换。
17.已知str的值为“abcdefgh”,则表达式“str.Substring(1,3)”的值为()
。
18.定义方法时使用的参数是()。
19.数据类型说明符用来说明方法返回值的类型,如果没有返回值,则其类型说明符应为(
)。
20.委托声明的关键字()。
解答:
1.分号
2.//
3./**/
4.声明
5.()
6.const
7.显式转换
8.using
9.false
10.true
11.
12.7
13.false
14.continue
15.goto
16.char
17.bcd
18.形参
19.void
20.delegate
二.简答题
解答:
三.读程序题
1.intx,y,z;
x=12;y=16;while(x!
=0){
z=y%x;
y=x;
x=z;
}
写出程序运行完后X,Y,Z的值
2.inta=8,b=3,x=1,y;
x+=b++;
if(x>=1&&x<3)y=a+b*x;
elseif(x<8&&x>=3)y=a-b%x;
else
y=a/b/x;
写出程序运行完后X,Y的值
3.inti,x=0,y=0;for(i=5;i>=1;i--)
{
y=(x+1)*2;x=y;
}
写出程序运行完后Y的值
4.strings;
StringBuildersb=newStringBuilder();
sb.Append("北运");
sb.Insert(1,"京奥");
s=sb.ToString();
s=s.Insert(s.Length,"2008");
lblShow.Text="\""+s+"\"长度为"+s.Length;
写出程序运行后文本框lblShow中的内容.
5.int[]nNum={90,16,24,65,25};
intn=nNum[0];
foreach(intnTmpinnNum)
{
if(nTmp>n)
{
n=nTmp;
}
}
Console.Write(n.ToString());
6.for(inti=100;i<1000;i++)
{intbai=0;
intshi=0;
intge=0;
intbaiyushu=0;
bai=i/100;
baiyushu=i%100;
shi=baiyushu/10;
ge=baiyushu%10;
if(i==bai*bai*bai+shi*shi*shi+ge*ge*ge)
{Console.Write("水仙花数:
"+i.ToString()+"\n");
//Response.Write("水仙花数:
"+i+"\n");
}
}
Console.ReadKey();
写出程序运行完后屏幕上的结果显示
7.intx=16;Console.WriteLine(x);
inty=x>>2;Console.WriteLine(y);
y=y>>2;Console.WriteLine(y);
y=y>>2;Console.WriteLine(y);
写出程序运行完后屏幕上的结果显示
8.intx=-16;Console.WriteLine(x);
inty=x>>2;Console.WriteLine(y);
y=y>>2;Console.WriteLine(y);
y=y>>2;Console.WriteLine(y);
写出程序运行完后屏幕上的结果显示
9.Console.WriteLine(1isint);
Console.WriteLine(1isfloat);
Console.WriteLine(1.0isfloat);
Console.WriteLine(1.0isdouble);
写出程序运行完后屏幕上的结果显示
10.inta=24,b=8;Console.WriteLine("{0}+{1}={2}",a,b,a+b);
Console.WriteLine("{0}-{1}={2}",a,b,a-b);
Console.WriteLine("{0}*{1}={2}",a,b,a*b);
Console.WriteLine("{0}/{1}={2}",a,b,(float)a/b);
写出程序运行完后屏幕上的结果显示
11.intx=23,y;
if(x>0){
y=1;}
else
{
if(x==0)y=0;else
y=-1;}
Console.WriteLine("Y的值为:
{0}",y);
写出程序运行完后屏幕上的结果显示
12.gotoh;
w:
Console.WriteLine("A");
gotoe;
h:
Console.WriteLine("B");
gotow;
e:
Console.WriteLine("C");
写出程序运行完后屏幕上的结果显示
13.longx=5,i=1,p=1;while(i<=x)
{
p=p*i;
i++;
}
Console.WriteLine("p={0}",p);
写出程序运行完后屏幕上的结果显示
14.intd=9,x1=0,x2=1;while(d>0){
x1=(x2+1)*2;x2=x1;d--;
}
Console.WriteLine(x1.ToString());
写出程序运行完后屏幕上的结果显示
15.longs=0,p=1,s1,i=1,n=5;while(i<=n)
{
s1=1;p=1;while(p<=i)
{
s1=s1*p;
p=p+1;}
s=s+s1;i++;
}
Console.WriteLine("s={0}",s);
写出程序运行完后屏幕上的结果显示
16.for(inti=0;i<=4;i++)
{
for(intj=1;j<=2;j++)
{
Console.WriteLine("iis{0},jis{1}",i,j);
if(i+j>3)gotoa;
}
}
a:
Console.WriteLine("End");
写出程序运行完后屏幕上的结果显示
17.inti=0,s=1;do
{
s/=s+1;i++;
}while(i<=10);
Console.WriteLine("iis{0}",i);
Console.WriteLine("sis{0}",s);
写出程序运行完后屏幕上的结果显示
18.inti=0,s1=0,s2=0;while(i<=50){
if(i%2==0)s1+=i;
else
s2+=i;
i++;
}
Console.WriteLine("s1is{0}",s1);
Console.WriteLine("s2is{0}",s2);
写出程序运行完后屏幕上的结果显示
19.staticintfun(intx,inty)
{
intz=x+y;
returnz;
}
staticdoublefun(doublex,doubley)
{
doublez=x*y;
returnz;
}
staticvoidMain(string[]args)
{
Console.WriteLine("theresultis:
{0}",fun(3.0,4));
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
20.staticinta=0;staticintfun(intx,inty)
{
a=x+y;
returna*a;
}
staticvoidMain(string[]args)
{
int[]arr1={1,2,3};
int[]arr2={2,4,6};
intn=0;for(inti=0;i<3;i++)
{
n+=fun(arr1[i],arr2[i]);
}
Console.WriteLine("ais:
{0}",a);
Console.WriteLine("nis:
{0}",n);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
21.enumMonth{Januray,February=10,March}
staticstringfun(Monthm)
{
switch(m)
{
caseMonth.Januray:
returnString.Format("Januray={0}",(int)m);
caseMonth.February:
returnString.Format("February={0}",(int)m);
caseMonth.March:
returnString.Format("March={0}",(int)m);
default:
return"Month";
}
}
staticvoidMain(string[]args)
{
Console.WriteLine(fun(Month.Januray));
Console.WriteLine(fun(Month.February));
Console.WriteLine(fun(Month.March));
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
22.int[]myArray=newint[]{10,8,3,5,6,7,4,6,9};
for(intj=1;j{
for(inti=0;i{
if(myArray[i]{
inttemp=myArray[i];
myArray[i]=myArray[i+1];
myArray[i+1]=temp;
}
}
}
foreach(intninmyArray)
Console.Write("{0}",n);
Console.ReadKey();
写出程序运行完后屏幕上的结果显示
23.inta,b=5;charc1='A';
a=c1;floatx=3;x+=b;
Console.WriteLine("a={0}",a);
Console.WriteLine("x={0}",x);
Console.ReadKey();
写出程序运行完后屏幕上的结果显示
24.staticvoidMain(string[]args)
{
Console.WriteLine((0).GetType());
Console.WriteLine((0U).GetType());
Console.WriteLine((0L).GetType());
Console.WriteLine((0F).GetType());
Console.WriteLine((0D).GetType());
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
25.staticvoidMain(string[]args)
{
intx=5;inty=x++;
Console.WriteLine(y);
y=++x;
Console.WriteLine(y);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
26.staticvoidMain(string[]args)
{
inta=0;intb=6;switch(b)
{
case1:
case3:
case4:
case8:
b=10;break;
case2:
case5:
case6:
case7:
b=20;break;
default:
b=30;break;
}
Console.WriteLine(b);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
27.staticvoidMain(string[]args)
{
ints=0;for(inti=0;i<100;i++)
{
if(s>10){
break;
}
if(i%2==0){
s+=i;
}
}
Console.WriteLine(s);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
28.staticvoidMain(string[]args)
{
for(inti=1;i<=5;i++)
{
for(intj=i;j<=5;j++)
{
Console.Write("*");
}
Console.WriteLine();
}
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
29.privatestaticvoidIncrease(refintnum1,intnum2){
num1++;
num2++;
}
staticvoidMain(string[]args)
{
intnum1=34;intnum2=55;Increase(refnum1,num2);
Console.WriteLine(num1);
Console.WriteLine(num2);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
30.staticvoidMain(string[]args)
{
intm=14,n=63;while(m!
=n)
{
while(m>n)
{
m=m-n;
}
while(n>m)
{
n=n-m;
}
}
Console.WriteLine(m);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
31.staticvoidMain(string[]args)
{
intmove=0;inty=68/8;if(y>8){
move=y/2+5;}
else
{
inta=y;
intb=6;move=a%b;
}
Console.WriteLine(move);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
32.staticvoidMain(string[]args)
{
intx=1,y,total=0;while(x<=5){
y=x*x;
total+=y;
x++;
}
Console.WriteLine(total);
Console.ReadKey();
}
写出程序运行完后屏幕上的结果显示
33.staticvoidMain(string[]args)
{
inti=4;for(introw=1;row<=i;row++)
{
for(intcol=1;col<=(i-row);col++)
{
Console.Write('');
}
for(intcol=1;col<=row;col++)
{
Console.Write(col);
}
for(intcol=row-1;