总分
 
阅卷人
9下列方法定义中,正确的是:
Aint x( ){ int a=10; }
Bvoid x( ){ ...return true; }
Cint x( ){ ...return true; }
Dint x( int a, int b){ return a+b; }
10在某个类A中存在一个方法:void get(int x),以下作为这个方法的重载的声明的是:
Avoid get(int y)              Bint get(int y)
Cdouble get(int x,int y)      Dvoid Get(int x,int y)
11下列语句序列执行后,i的值是:
for(int i=2;i<=10;i++)
    Console.WriteLine(i);
A2    B10    C11    D、不确定
12、下列语句序列执行后,i的值是:
int i=0
while(i<10)
{  i += 3;  }
A3    B6    C9    D12
13、要表示10个学生的成绩,下列声明并初始化数组正确的是:
Aint[] score=new int[9];      Bint[10] score=new int[];
Cint[] score=new int[ ];      Dint[] score=new int[10];
14已知声明并初始化二维数组int[ , ] a = {{1,2},{3,4},{5,6}},则a[1][1]的值为:
A2    B3    C4    D5
15有一个类A,以下为其构造函数的声明,其中正确的是:
A、A(int x){...}    B、 void A(int x){...}    C、a(int x){...}    D、void a(int x){...}
16C# 语言的类间的继承关系是:
A、多重的      B、单重的          C、单级的          D、不能继承
17、以下类用于存放客户信息:
class Customer
{
int cust_id;
String cust_name;
String cust_address;
}
添加一个addCustomer()方法到该类中,该方法应当只能被当前程序集中的所有类的对象所访问。你应当采取下列哪项措施?
A、把方法说明成为public,将类说明成为public
B、把方法说明成为protected,将类说明成为internal
C、把方法说明成为private,将类说明成为internal
D、把方法说明成为public,将类没有任何访问说明符
注意:请将所有题目的答案写在答题卡上,写在试卷上无效。
一、单项选择题(每题1分,共20分)
1C#属于一种编程语言,它属于:
A、机器语言
B、汇编语言
C、高级语言
D、第四代语言
2、要定义一个整型变量,下面写法正确的是:
AInt age              Bint num Test
Cint num              Dnum int
3、下列转义字符中,表示换行的是
A\n      B\f      C\r      D\t
4以下选项中,合法的赋值语句是:
A、a = = 1;        B、 ++i;    C、 a= a + 1 = 5;    D、y = y + i ;
5、表达式Console.WriteLine("a={0}",10/3);输出的结果是:
A a=3.333333    Ba=3      Ca=3.33          Da=3.0
6下列标准化输出语句中,不正确的是:
AConsole.WriteLine("a="+a);      BConsole.WriteLine("a={0}"+a);
CConsole.WriteLine("a={0}",a);    DConsole.WriteLine("a="+a%5);
7下列程序段执行后t5的结果是:
int t1 = 9, t2 = 11, t3=8, t4,t5;
t4 = t1 > t2 ? t1 : t2;
t5 = t4 > t3 ? t4 : t3;
A8    B20    C11    D9
8、设 a, b, c, d 均为 int 型的变量,并已赋值,下列if表达式不正确的是:
Aif( a!=b && c%d < a )
Bif( a++ == a+b+c+d )
Cif( ++a*b--+d  )
Dif( a+b>=c+d )
郑州大学软件学院C#程序设计导论》课程试卷
  (考试时间:120分钟  满分:100    适用专业:)
2007-2008学年第 学期
第 1 页
注:请将所在的院(系)、专业、班级、姓名和学号写在密封线内,不要写在其他地方
软件技术学院____________________专业_____________ 班  姓名_______________学号______________________
密        封        线        内        不        要        答        题
———————————密———————————————封———————————————线————————————
共 5 页
密        封        线        内        不        要        答        题
———————————密———————————————封———————————————线————————————
第 2 页
共 5 页
18、下列不属于访问修饰符的是:
A virtual    B public  Cprotected      D private
19、下列代码中的错误是:
(1)  public class Test
(2)  {
(3)      public static void Main(string [] args)
(4)      {
(5)          int i;
(6)          i+=1;
(7)      }
(8)  }
A、非法的表达式 i+=1      B、不到符号i
C、类不应为public          D、尚未初始化变量i
20、关于父类和子类下列说法正确的是:
  A、父类可以使用子类中的任何变量和方法
  B、子类可以使用父类中的任何变量和方法
  C、子类可以使用父类中的非private变量和非private方法
  D、子类中调用父类的方法使用父类的名字加“ . ”运算符
二、读程序,写出程序运行后的显示结果(每题5分,共30分)
1 class P2_1
{
    public static void Main(string[] args)
    {
        int a=2,b;
        b=a++;
        Console.WriteLine("b="+b);
        b=--a;
        Console.WriteLine("b="+b);
        b=a/10*10;
        Console.WriteLine("b="+b);
    }
}
2class P2_2
{
    public static void Main(string[] args)
{
int number = 2568;
      string SNum;
      int n1, n2, n3, n4, n5;
      n5 = number / 10000;
      n4 = number / 1000 % 10;
      n3 = number / 100 % 10;
      n2 = number / 10 % 10;
      n1 = number % 10;
      SNum = n5 + "#" + n4 + "#" + n3 + "#" + n2 + "#" + n1;
      Console.WriteLine("the string is : {0}", SNum);
    }
}
3
class test
{
    static string reverse(int number)
    {
        int a1, a2, a3, a4;
        a1 = number % 10;
        a2 = number / 10 % 10;
        a3 = number / 100 % 10;
        a4 = number / 1000;
        a1 = (a1 + 7) % 10;
        a2 = (a2 + 7) % 10;
        a3 = (a3 + 7) % 10;
        a4 = (a4 + 7) % 10;
        return a3.ToString() + a4.ToString() + a1.ToString() + a2.ToString();
    }
    static void Main(string[] args)
    {
        int number = 2357;
        Console.WriteLine("number = {0}", reverse(number));
    }
}
密        封        线        内        不        要        答        题
———————————密———————————————封———————————————线————————————
第 3 页
共 5 页
4class P2_4
{
    static void Main(string[] args)
    {
        int[] num = { 3, 5, 7, 2 };
        for (int i = 0; i < num.Length; i++)
        {
            Console.Write(num[i] + "    ");
            for (int j = 1; j <= num[i]; j++)
                Console.Write("*");
            Console.WriteLine();
        }
    }
}
5 class Program
    {
        static void Main(string[] args)
        {
            int n;
            Console.WriteLine("N    10*N  100*N");
            n = 1;
            while (n <= 3)
            {
                Console.WriteLine("{0}{1,7}{2,7}",n,10*n,100*n);
                n++;
            }
        }
}
6class Fruit
{
    public float weight;
    public String color;
   
    public Fruit()
    {           
    }
   
    public Fruit(float w,String c)
    {
        weight=w;
        color=c;
    }
}(接下页)
(接上页)public class FruitTest
{
    public static void Main( string[] args)
    {
        Fruit f1=new Fruit();
        Fruit f2=new Fruit(0.8d,"red");
        Console.WriteLine("f1 weight:"+f1.weight+"  f1 color:"+f1.color);
        Console.WriteLine("f2 weight:"+f2.weight+"  f2 color:"+f2.color);
        Console.WriteLine("f1 and f2 average weight:"+(f1.weight+f2.weight)/2);
    }
}
三、根据程序功能完善程序,在给出的空白处填上正确的语句(每空3分,共30分)
1、求1100以内所有的偶数之和。
class P3_1
{
    public static void Main(String[] args)
    {
        //  sum 为求和后的最终结果。
        int sum=0;
        for(_____________)
        {
          if(_____________)
            {
                _____________
            }
        }
        Console.WriteLine(sum);
    }
}
2如果一个正整数按反向顺序放置后仍然与原数相等,称为回文数(如: 12321)。编程:要求用户输入一个5位数,判断此数是否为回文数。
密        封        线        内        不        要        答        题
———————————密———————————————封———————————————线————————————
第 4 页
共 5 页
class Program
    {
        static void Main(string[] args)
        {
            int number;
            Console.Write("enter a number:");
            number = Int32.Parse(Console.ReadLine());
            if (number > 9999 & number < 100000)
            {
                int a1, a2, a4, a5;
a5 = number / 10000;
                ____________________________
                ____________________________
            a1 = number % 10;
                if (_________________)
                    Console.WriteLine("the number is 回文。");
                else
                    Console.WriteLine("the number is not 回文。");
            }
            else
            {
                Console.WriteLine("number must > 9999 and < 100000");
            }
        }
}
3递归方法gcd,返回x和y的最大公约数。x和y的最大公约数方法gcd的递归定义如下:如果y等于0,则gcd(x,y)就是x;否则,gcd(x,y)就等于gcd(y,x%y),其中“%”是求模运算符。
static int gcd(int x,int y)
{
    if(y==0)
        return x;
    else
        ____________________________
}
4、 编写一个方法,用来显示一个由实心星号组成的正方形,其边长由整型参数side指定。
例如:side 为 4 时,则如下显示。
****
****
****
****
class Program
{
    static void square(int side)
    {
        for (____________________________)
        {
            for (____________________________)
            {
                Console.Write("* ");
            }
            Console.WriteLine();
        }
    }
    static void Main(string[] args)
    {
        Console.Write("Please enter the side:");
        int side = Int32.Parse(Console.ReadLine());
        //  调用函数的语句。
        ____________________________
    }
}
writeline方法属于类
密        封        线        内        不        要        答        题
———————————密———————————————封———————————————线————————————
第 5 页
共 5 页
四、编程题,请根据问题描述编写出完整的程序(共20分)
1、从键盘输入一个字符ch和一个数字n,然后在屏幕上显示出n行该符号,第一行显示一个,第二行显示2个……,第n行,显示n个。例如,输入的符号是“#”,n=5。则显示如下:
      #
      ##
      ###
      ####
      #####
( 提示,注意使用Console.Write()Console.WriteLine();的区别
2、(1根据下面的要求实现人类People
a)人类People的成员变量:
公共成员name表示姓名,为String类型
公共成员age  表示性别,为int  类型
b)人类People的方法:
(1)无参构造函数People ( ),将各成员变量初始化为“unknown”和20 。
(2)构造函数People (string n, int a)
(3)public virtual void disp( ) 将人的姓名、年龄输出到屏幕
(2)通过继承People类,派生出学生类Student 。要求如下:
a)学生类Student的成员变量:
公共成员department表示所在院系,为String类型
b)学生类Student的方法:
(1)构造函数Student (string n, int a , string dep),用base 关键字调用父类中有两个参数的构造函数
(3)重载覆盖父类中的函数 disp( ) 将学生的姓名、年龄、所在院系输出到屏幕
软件学院____________________专业_____________ 班  姓名_______________学号______________________
密        封        线        内        不        要        答        题
———————————密———————————————封———————————————线————————————
第2 页
共 2 页
第 6 页
共 6 页
第 7 页
共 8 页
第 1页
共 2 页
                     

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。