C#基础试题附答案.docx

上传人:b****8 文档编号:27788427 上传时间:2023-07-05 格式:DOCX 页数:20 大小:18.73KB
下载 相关 举报
C#基础试题附答案.docx_第1页
第1页 / 共20页
C#基础试题附答案.docx_第2页
第2页 / 共20页
C#基础试题附答案.docx_第3页
第3页 / 共20页
C#基础试题附答案.docx_第4页
第4页 / 共20页
C#基础试题附答案.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

C#基础试题附答案.docx

《C#基础试题附答案.docx》由会员分享,可在线阅读,更多相关《C#基础试题附答案.docx(20页珍藏版)》请在冰豆网上搜索。

C#基础试题附答案.docx

C#基础试题附答案

一、选择题

1、能作为C#程序的基本单位是()。

A.字符B.语句C.函数D.源程序文件

答案:

B

2、将变量从字符串类型转换为数值类型可以使用的类型转换方法是()。

()()答案:

D

3、数据类型转换的类是()。

C.ConstD.Single

答案:

B

4、字符串连接运算符包括&和()。

A.+B.-C.*D./

答案:

A

5、先判断条件的当循环语句是()。

A.do...whileB.whileC.while...doD.do...loop

答案:

B

6、下面几个函数,()是重载函数.

f1(int)f1(int)f1(int,int)k(int)

A.四个全和4和3和4

答案:

C

8、以下的C#代码:

staticvoidMain(string[]args)

{

  ("运行结果:

{0}",());

  ();

}       

代码运行结果为()。

A.在控制台窗口显示“运行结果:

B.在控制台窗口显示“运行结果:

{0}”

C.在控制台窗口显示“运行结果:

,Console.ReadLine”

D.如果用户在控制台输入“A”,那么程序将在控制台显示“运行结果:

A”

答案:

D

9、在C#中定义一个数组,正确的代码为()。

arraya=newint[5];[]arraya=newint[5];

arraya=newint[];[5]arraya=newint;

答案:

B

10、在C#中,下列代码运行后,变量Max的值是()(选择一项)Inta=5,b=10,c=15,Max=0;

      Max=a>ba:

b;

      Max=c

Max;

答案:

C

11、在C#中,关于continue和break,以下说法正确的是(  )

Abreak是中断本次循环Bcontinue是中断本次循环,进入一下次的循环

Cbreak是中断本次循环,进入一下次的循环Dcontinue是中断整个循环

答案:

A

12、在C#中,关于while和do…while,以下说法正确的是(  )

Awhile先执行然后判断条件是否成立Bwhile最少的循环次数是1次

Cdo…while先执行然后判断条件是否成立Ddo…while最少的循环次数是0次

答案:

C

13、在C#中,下列变量定义与赋值正确的是(    )

Ainta=同学  Bfloata=老师Cdoublea=教室    Dchara=’学’

答案:

D

14、表达式“abcde”==”abcde”+”2006”的值为()

A.True2006B.trueC.falseD.0

答案:

C

15、在C#中定义类时,使用的关键字是()

A、interfaceB、intC、classD、overrides

答案:

C

二.写出下列程序的结果

1、

{

inty=1,x;

if(y!

=0)

{

x=5;

}

elseif(y<0)

{

x=4;

}

else

{

x=3;

}

("x={0}”,x);

}

答案:

5

2、

{

intx,y=0;

do

{

x=y++;

(x);

}while(y<6);

}

答案:

15

3、

classTest

{

staticvoidMain()

{

intx=5;

inty=x--;

("y={0}",y);

y=--x;

("y={0}",y);

}

}

答案:

5,5

4、

classTest

  public staticvoidMain()

  { 

static int[]a={1,2,3,4,5,6,7,8};

int s0,s1,s2;

    s0=s1=s2=0;

    for (inti=0;i<8;i++)

    { 

switch (a[i]%3)

     {

case 0:

s0+=[i];break;

      case 1:

s1+=[i];break;

      case 2:

s2+=[i];break;

 }

}

    (s0 +""+s1+""+s2);

}

}

答案:

9+12+13

5、

usingSystem;

classTest

{

   public staticvoidMain()

ints=0,i=1;

 for(; ;i++)

{

   if(s>50)  break;

   if(i%2==0) s+=i;

}

("i,s="+i+","+s);

}  

}

答案:

14,S=2+4+6...+14,56

6、写出下列函数的功能。

staticfloatFH()

{

   floaty=0,n=0;

6、   intx=());.+99/100之和。

答案:

{

("sum=");

doublesum=1;

("{0}",Sum());

();

}

staticdoubleSum()

{

doublesum=1;

doublei=1;

while(i<=100)

{

sum+=i/(i+1);

i=i+1;

}

returnsum;

}

7、编写一个程序,用while语句,求出1+(1+2)+(1+2+3)+...+(1+2+3+...+10)之和。

答案:

{

intsum=0;

("和为:

");

("{0}",Sum());

();

}

staticintSum()

{

intsum=0;

inti=1;

inta=0;

while(i<=10)

{

a=a+i;

sum=sum+a;

i=i+1;

}

returnsum;

}

8、有关系式1*1+2*2+3*3+...+k*k<2000,编一个程序,求出满足此关系式的k的最大值。

答案:

{intsum=0;

("最大值为:

{0}",Max());

();

}

staticintMax()

{

intsum=0;

intk=1;

while(sum<2000)

{

sum+=k*k;

k++;

}

returnk-1;

}

9、编写一个程序,要求用while循环语句,打印1到100的正整数,每行打印5个数,每列右对齐。

答案:

{

Quee();

();

}

staticvoidQuee()

{

for(inti=1;i<=100;i++)

{

("{0}",i);

if(i%5==0)

{

();

i++;

}

}

return;

}

10、编一个程序,利用二重for循环语句,打印出九九乘法口诀表。

答案:

{

Chengfabiao();

();

}

staticvoidChengfabiao()

{

for(inti=1;i<=9;i++)

{

for(intj=1;j<=i;j++)

{

("{0}*{1}={2}",j,i,i*j);

}

();

}

return;

}

11、编一个程序,利用for循环语句,求出1!

+2!

+3!

+...+10!

的和。

答案:

{

intsum=0;

("{0}",Sum());

();

}

staticintSum()

{

intsum=0;

inta=1;

for(inti=1;i<=10;i++)

{

a=a*i;

sum=sum+a;

}

returnsum;

}

13、编一个程序,定义一个字符串变量,输入字符串,然后再输入一个字符,在字符串中查找该字符出现的次数。

答案:

{

("请输入字符串:

");

stringstr=();

("请输入字符:

");

charc=());

ints=Str(str,c);

("{0}",s);

();

}

staticintStr(stringstr,charc)

{

inta=0;

for(inti=0;i<;i++)

{

if(str[i]==c)

{

a++;

}

}

returna;

}

15、编一个程序,输入一个整数,判定它为几位数。

例如,99是2位数,-100是3位数。

答案:

{

("{0}",Math());

();

}

staticintMath()

{

inta=());

intb=0;

intc=1;

if(a<0)

{

b=-a;

}

if(a>0)

{

b=a;

}

while(b>=10)

{

b=b/10;

c++;

}

returnc;

}

四、面向对象

1、定义一个车辆(Vehicle)基类,具有Run、Stop等方法,具有Speed(速度)、

MaxSpeed(最大速度)、Weight(重量)等域。

然后以该类为基类,派生出Bicycle、Car等类。

并编程对该派生类的功能进行验证。

答案:

基类:

classVehicle

{

publicdoubleSpeed;

publicdoubleMaxspeed;

publicdoubleWeight;

publicvoidRun()

{

("我跑。

");

}

publicvoidStop()

{

("我停。

");

}

派生类:

classBicycle:

Vehicle

{

}

classCar:

Vehicle

{

}

对派生类功能的验证:

staticvoidMain(string[]args)

{

Bicyclep=newBicycle();

();

Carc=newCar();

();

();

}

2、写一个控制台应用程序,接收一个长度大于3的字符串,完成下列功能:

1)输出字符串的长度。

2)输出字符串中第一个出现字母a的位置。

3)在字符串的第3个字符后面插入子串“hello”,输出新字符串。

4)将字符串“hello”替换为“me”,输出新字符串。

5)以字符“m”为分隔符,将字符串分离,并输出分离后的字符串。

答案:

{

("输入字符:

");

stringstr=();

while<=3)

{

str=();

}

("字符串的个数:

");

("{0}",;

intindex=('a');

if(index>=0)

{

("出现字符a的位置:

");

("{0}",index);

}

else

{

("字符串中不含字符a");

}

stringstr1="hello"+(3);

("出现新字符串:

");

(str1);

str1=("hello","me");

("替换后的字符串:

");

(str1);

string[]str2=('m');

for(inti=0;i<;i++)

{

("分割后的字符串:

");

(str2[i]);

}

();

}

3、编写一个控制台应用程序,完成下列功能,并写出运行程序后输出的结果。

1)创建一个类A,在A中编写一个可以被重写的带int类型参数的方法MyMethod,

并在该方法中输出传递的整型值后加10后的结果。

2)再创建一个类B,使其继承自类A,然后重写A中的MyMethod方法,将A中接收的整型值加50,

}

3)在Main方法中分别创建A和类B的对象,并分别调用MyMethod方法。

答案:

并输出结果。

classA

{

publicvirtualvoidMyMethod(intnum)

{

num+=10;

("{0}",num);

}

classB:

A

{

publicoverridevoidMyMethod(intnum)

{

num+=50;

("{0}",num);

}

{

Aa=newA();

(3);

Bb=newB();

(8);

();

4编写一个类Calculate1,实现加、减两种运算,然后,编写另一个派生类Calculate2,实现乘、除两种运算。

classCalculate1

{

publicvirtualvoidMix(inta,intb)

{

("运算符为:

");

strings=();

intc;

if(s=="+")

{

c=a+b;

("{0}",c);

}

elseif(s=="-")

{

c=a-b;

("{0}",c);

}

}

publicoverridevoidMix(inta,intb)

{

("运算符为:

");

strings=();

intc;

if(s=="*")

{

c=a*b;

("{0}",c);

}

elseif(s=="/")

{

c=a/b;

("{0}",c);

}

}

{

Calculate1c=newCalculate1();

(3,4);

Calulate2d=newCalulate2();

(8,4);

();

}

5、编写出一个通用的人员类(Person),该类具有姓名(Name)、年龄(Age)、性别(Sex)等域。

然后对Person类的继承得到一个学生类(Student),该类能够存放学生的5门课的成绩,并能求出平均成绩。

最后在Main函数中对student类的功能进行验证。

classPerson

{

publicstringName;

publicintAge;

publicstringSex;

}

classStudent:

Person

{

publicdoubleAvg()

{

int[]Score=newint[5]{23,34,56,78,90};

inti=0;

intsum=0;

while(i<5)

{

sum+=Score[i];

i++;

}

return(double)sum/5;

}

{

Students=newStudent();

("姓名:

");

="张三";

("{0}",;

("年龄:

");

=19;

("{0}",;

("性别:

");

="男";

("{0}",;

("成绩:

");

("{0}",());

();

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1