《C#程序设计》模拟试题以及答案

C#程序设计》模拟试题

单项选择题(每小题2分,共20分)

1. C#源程序文件的默认扩展名为(    )

        A. cpp       B. exe       C. cs       D. lik

 

答:C

 

2. C#程序从上机到得到结果的几个操作步骤依次是(      )

        A. 输入、编辑、运行

        B. 编译、连接、运行

        C. 输入、运行、编辑

        D. 编辑、编辑、连接

 

答:A

 

3. 以下标识符中不全是关键字的是(    )。

        A. case     for     int

        B. default  then    while

        C. bool     class   long

        D. goto     uint    char

答:B

 

4. 能作为C#程序的基本单位是(    )

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

答:B

 

5. 一个C#程序总是调用哪个函数作为开始(    )。

        A. main      B. MAIN      C. Main      D. 任意标识符

答:C

 

6. 可用作C#程序用户标识符的一组标识符是(    )

 

A. void    define    +WORD

B. a3_b3    _123     YN

C. for      -abc      Case

D. 2a      DO      sizeof
答:B

 

7. int a=12;,则执行完语句a+=a*a;后,a的值是(    )

        A. 12      B. 144      C. 156      D. 288
答:C

 

8. 假设在程序中 abc 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式的表达式是(    )

A. 1.0/a*b*c    B. 1/(a*b*c)    C. 1/a/b/(float)c    D. 1.0/a/b/c
答:D

 

9. x是一个bool型的逻辑量,y的值为10,则表达式 x && y的值为(    )。

        A. 1      B. 0      C. x值相同      D. x值相反

答:C

10. x>0 && x<=10的相反表达式为(    )。

A. x<=0 || x>10        B. x<=0 && x>10

C. x<=0 || x<=10       D. x>0 && x>10

 

 

 答:A

填空题(每空2分,共20分)

1. 含随机函数的表达式rand()%20的值在                    19区间内。 0

2. switch语句中,每个语句标号所含关键字case后面的表达式必须是整型       。常量(或常数)

3.  if语句中,每个else关键字与它前面同层次并且最接近的              关键字相配套。if

4. 作为语句标号使用的C++保留字casedefault只能用于              语句的定义体中。switch

5. while循环的“头”为“while(i++<=10)”,并且i的初值为0,同时在循环体中不会修改i的值,则循环体将被重复执行              次后正常结束。 11

6. do循环的“尾”为“while(++i<10)”,并且i的初值为0,同时在循环体中不会修改i的值,则循环体将被重复执行              次后正常结束。10

7. 当在程序中执行到              语句时,将结束本层循环类语句或switch语句的执行。 break

8. 当在程序中执行到________语句时,将结束所在循环语句中循环体的一次执行。continue

9. 元素类型为int10个元素的数组共占用________字节的存储空间。40

10. 元素类型为double46列的二维数组共占用________字节的存储空间。 192

 

 

 

三、程序阅读题(每小题6分,共24分)

1.写出以下程序运行结果。

using System;

class Test

{

    public static void Main ()

{

       int[] a ={2,4,6,8,10,12,14,16,18};

       for (int i=0; i<9; i++) {

              Console.write(“   ”+a[i]);

              if ((i+1)%3==0) Console.writeLine();

       }

}

}

 

 2 4 6

 8 10 12

 14 16 18

 

 

2.写出以下程序运行结果

using System;

class Test

{

    public static void Main ()

{

         char[] a = "abcdabcabfgacd";

         int i1=0,i2=0,i=0;

         while (a[i]) {

                if (a[i] == ’a’) i1++;

                if (a[i]== ’b’) i2++;

                i++;

         }

         Console.writeLine(i1+ “  “ + i2);

}

}

4 3

3.写出以下程序运行结果。

using System;

class Test

{

   public static void Main ()

{

       int s=0;

       for (int i=1;  ; i++) {

              if (s>50)  break;

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

       }

      Console.writeLine ("i,s=" + i + "," + s);

}

}

 i,s=15,56

 

4.写出以下程序运行结果。

using System;

class Test

{

    public static void Main ()

{     

int i,j;

       for(i=0; i<3; i++) {

               for(j=0; j<=i; j++)    Console.write(“*”);

               Console.writeLine();

       }

}

}

 

*

**

***

 

 

5.写出以下程序运行结果。

using System;

class Test

{

static void LE(ref int a, ref int b) {

       int x = a;

       a = b;  b = x;

       Console.writeLine (a + “   “ +b);

}

public static void Main ()

{

        int x=10, y=25;

LE(ref x, ref y);

     Console.writeLine (a + “   “ +b);

}

}

 25 10

 25 10

6.写出以下程序运行结果。

using System;

class Test

{

static int LB(ref int[] a,int n) {

       int s=1;

       for (int i=0; i

              s*=a[i];

       return s;

}

public static void Main () {

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

       int b = LB(ref a,5) + LB(ref a,3);

      Console.writeLine ( “b =  “ +b);

}

 b= 126

 

编程题(10分)

 

打印出299之间的所有素数(即不能被任何数整除的数)

using System;

 

namespace psushu

{

    class MainClass

    {

       public static void Main(string[] args)

       {         

           int i;

           for(i=2;i<=99;i++)

           {

              if(IsSushu(i))

                  Console.Write("{0} ",i);

           }

           Console.ReadLine();

       }

      

      

       static bool IsSushu(int n)

         {

                  bool b=true;

      

                  if(n==1||n==2)

                     b=true;                 

                  else

                  {

                    int i,s;

                   

                    s=(int)System.Math.Sqrt(n);

                    for(i=s;i>1;i--)

                     {

                      if(n%i==0)

                       {

                         b=false;

                         break;

                       }

                     }

                   

                  }

                 

                  return b;

          

         }

    }  

 }

 

 

 

你可能感兴趣的:(c#,class,存储,c,string,float,TESTS)