翰子昂阶段性测试_S1阶段 ——JAVA 方向理论测试试题A卷

来源:互联网 发布:win10远程桌面连接软件 编辑:程序博客网 时间:2024/05/03 17:59

                                                                                       翰子昂阶段性测试_S1阶段

                                                                               ——JAVA 方向理论测试试题A

姓名:                    准考证号:                    身份证号:              

本理论考试试卷,共40题,每小题2.5分,共100分。请考生将姓名、考试阶段、试卷类型、准考证号涂在答题卡上。并将每道题的正确选项涂写在答题卡相应位置上,答在试卷上不得分,错选、多选、少选或未选均不得分。考试时间为60分钟,考试完毕后请将本试卷与答题卡一同上交,不交回试卷者成绩无效。

 

1. 下列合法的标识符的是(  D )(选择一项)
 a)  3_third
 b)  case
 c)  vi-vo
 d)  sum

 

2. C语言中,下列( A  )格式用于在printf()语句中以16进制的格式显示变量的值。(选择一项)
 a)  %x
 b)  %o
 c)  %c  
 d)  %d

 

3. 以下关于C语言函数的说明中,不正确的是:(   C)。(选择一项)

a)  一个C程序有且只有一个main函数
b)  用户自定义函数不需要包含头文件
c)  C语言中比较两个字符串是否相等,既可以用关系运算符“= =”,又可以用函数      

strcmp()
d)  使用数学运算的函数,需要包含头文件<math.h>

 

4. main()

 {int x=1,a=0,b=0;

   switch(x)

   {  case 0:b++;

      case 1:a++;

      case 2:a++;b++ ;   }

  printf("a=%d,b=%d\n",a,b) ; } 

以上C程序的输出结果是:( B  )。(选择一项)

a)  a=1,  b=1                 b)  a=2,  b=1

c)  a=1b=0                 d)  a=2b=2

 

5. 研究下面C代码段

int cnt;

while (cnt<1)

{

     cnt++;

}

在该程序段执行后计数变量cnt的值应该是:(D   )。(选择一项)
a)  0
b)  陷入无限循环
c)  1
d)  以上都不是

 

6. xy均为整型变量,且x=10, y=3,则以下语句的输出结果是:(  D )。(选择一项)

printf(“%d,%d\n”,x--,--y);
 a)  10, 3
 b)  9, 3
 c)  9, 2
 d)  10, 2

7. C语言中,以下逻辑表达式的值为0的是:(  CD )。(选择两项)
   a)  !(9= =0) || (9= =0) && (3>1)
   b)  9%5= =4
   c)  (9= =0)&&(9.0/5 = =1)
   d)  !(2>2)&&(2>’1’)

 

8. main()

{

char ch;

ch=’a’+3;

putchar(ch);

}

上述C语言代码的输出是:( D  )。(选择一项)
   a)  a
   b)  100
   c)  c
   d)  d

 

9. int a=4,b=20;

if (a<b && ++a>b)

   printf(“b=%d”,b);

else

   printf(“a=%d”,a);

上面的C程序段的输出结果是( B  )。(选择一项)

a)  b=20    b)  a=5    c)  a=4    d)  b=21

 

10. C语言中,已知aint 型,bdouble型,cfloat型,dchar型,则表达式a+b*c-d/a的结果类型为(   B )。(选择一项)

a)  int      b)  double       c)  float    d)  char

 

11. UNIQUE列的特点(  B  )。(选择一项)

  a)  非空                    b)  唯一

  c)  非空唯一                d)  以上描述都不对

 

12. SQL Server的视图里有:

SELECT DISTINCT productName, price FROM

product WHERE (price>(SELECT AVG(price) FROM product)) 

ORDER BY price DESC;

下面说法错误的是(  B )。(选择一项)

  a) SELECT AVGpriceFROM product ”是子查询

  b) ORDER BY price DESC”是指按price从低到高顺序排列

  c)  查询结果显示的是大于平均价格的产品记录

  d)  此查询显示的字段只有“productName”和“price

 

13. SQL Server中,分组后筛选数据使用(A   )。(选择一项)

  a)  having                 b)  where

  c)  when                  d)  if

 

14. 以下的SQL语句:

SELECT StudentID As 学员编号,(Score*0.9+5) As 综合成绩

FROM Score

WHERE Score>=60

ORDER BY (Score*0.9+5)

以下说法错误的是( D )。(选择一项)

  a)  查询输出两列,列名分别为“学员编号”和“综合成绩”

  b)  只有分数值大于60分的成绩才计算综合成绩

  c)  查询输出的分数将从低到高排列

  d)  以上SQL语句语法错误,不能够在排序列中使用表达式

 

15. SQL Server的示例数据库NorthWind中,你想获得一张包含lastnameOrderDate的列表,该列表中的雇员至少要处理过一张订单。下面T-SQL都可以实现该需求,除了( A )(选择一项)

  a)  SELECT Employees.Lastname,OrderDate

FROM Employees LEFT JOIN Orders

ON Employees.EmployeeID=Orders.EmployeeID

  b)  SELECT Employees.Lastname,OrderDate

FROM Employees JOIN Orders

ON Employees.EmployeeID=Orders.EmployeeID

  c)  SELECT Employees.Lastname,OrderDate

FROM Employees INNER JOIN Orders

ON Employees.EmployeeID=Orders.EmployeeID

  d)  SELECT Employees.Lastname,OrderDate

FROM Employees , Orders

WHERE Employees.EmployeeID=Orders.EmployeeID

 

16. Employee表的EmpCode列是一个以100为开始值,以1为步长值,则创建表的过程中正确定义该列的语句是( B  )。(选择一项)

  a)  EmpCode int IDENTITY100-1

  b)  EmpCode int IDENTITY1001

  c)  EmpCode int IDENTITY-1100

  d)  EmpCode int IDENTITY1100

 

17.  设 int x=1,float y=2,则表达式 x / y的值是:(  D )。(选择一项)

   a)  0                       b)  1

   c)  2                       d)  以上都不是

 

18. 已定义aint类型的变量。以下选项中,合法的赋值语句是(  B )。(选择一项)

  a)  a +1 = 2;                 b)  int a = 8;

  c)  a = 8.8f;                 d)  a += a * 6;

 

19. 以下for循环的执行次数是 for(int x=0;(x==0)&&(x>4);x++);( B  )。(选择一项)

  a)  无限次                  b)  一次也不执行

  c)  执行4次                d)  执行3

 

20. 以下程序的执行结果是(  C )。(选择一项)

main()

{

     int i=0,a=0;

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

   {

   switch(i)

   {

   case 0:

   case 1:

   case 2: a+=3;

   case 3: a+=2;

   default: a+=5;

   }

   }

printf("%d\n",a);

}

  a)  16

  b)  38

  c)  42

  d)  32

21. C语言中,以下程序的输出结果,正确的是( B  )(选择一项)

 main()

 for(int i=1;i<=5;i++)

   {

   if(i%2)printf("*");

   else

   continue;

   printf("#");

   }

printf("$\n");

}

a) *#$

b) *#*#*#$

c) *#*#*$

d) $

 

22. 分析以下程序,判断正确的是(  B  ) (选择一项)

 main()

{

 int x,  y ;

 scanf (“%d”,&x) ;

 scanf (“%d”,&y) ;

   if (x>y)  { x+=y;  y++} ;

   else  y+=x ;

   x++ ;

 printf ( “%d,%d”, x, y)  ;

}

a) 若输入数据14,则输出26          

 b) 若输入数据41,则输出62

c) 若输入数据44,则输出48

d) 有语法错误,不能通过编译

  

23. 有以下程序,运行后,如果从键盘上输入5,则输出结果是(  B )。(选择一项)

#include  <stdio.h>

main()

{

      int x;

      scanf(“%d”,&x);

      if(x--<5)

      printf(“%d”,x);

        else

      printf(“%d”,x++);

}

  a)  3

  b)  4

  c)  5

  d)  6

 

24. 上述C语言代码的输出(  C   )选择一项

#include  <stdio.h>

       main()

       {

         int i=0;

         for ( ; i<5; )

           printf(“%d”,i++);

}

a)  0 1 2 3 4 5

b)  0 2 4

c)  0 1 2 3 4

d)  语法错误

 

25. 研究下面的C程序段:循环体的总执行次数是(  D )。(选择一项) 

   int i,j;

   for (i=5;i;i--)

   for(j=0;j<4;j++){…}

a)  9                       b)  5

c)  4                       d)  20

 

26. 下面程序的输出结果是(  A )(选择一项)

#inlcude  <stdio.h>

main()

{

int k;

for(k=1;k+1;k++) {

if(k>4){

printf("%d",k);

break;

}

printf("%d",k++);

}

}

  a)  1,3,5                  b)  0,3,5

  c)  5,3,1                  d)  3,5,7

 

27. 以下程序的输出结果是(  C  )(选择一项)

#include<stdio.h>

    void fun(int x, int y, int z)

    {z=x*x+y*y}

     main()

    {

      int a=31;

      fun(5,2,a)

      printf(“%d”,a)

    }

a)  0

b)  29

c)  31

d)  不确定

 

28.以下C程序运行后会显示(  B  )(选择一项)

 #include <stdio.h>

void change(int x)

{

   x+=5;

}

main()

{

  int x=5;

  change(x);

  printf(“%d”,x);

}

  a)  0

  b)  5

  c)  10

  d)  %d

 

29. 运行下列C程序:输出结果是(   A )(选择一项)

#include  <stdio.h>

int func(int *a)

{

  int b=2;

   b+=*a;

  return b;

}

main()

{

  int a=2,res=2;

res=func(&a);

  printf(“%d \n”,res);

}

a)  4         b)  6

c)  2         d)  8

 

30. 下面程序的输出为(   D )(选择一项)

#include<stdio.h>

main()

{

 int y=10;

 whiel(y--);

printf(“y=%d\n”,y);

}

  a)  y=0;                   b)  while结构无限循环;

  c)  y=1;                   d)  y=-1;

 

31. 若变量都已正确说明,则以下程序段输出为( B )。(选择一项)

a=10;

b=50;

c=30;

if(a>b)a=b;

b=c;

c=a;

printf(“a=%d b=%d c=%d\n ”,a,b,c);

a)  a=10  b=50  c=10       b)  a=10  b=30  c=10

c)  a=50  b=30  c=10       d)  a=50  b=30  c=50

 

32. 已知字母aASCII码为十进制数97,下面程序的输出是(   D )(选择一项)

main()

{char c1,c2;

 c1=’a’+’6’-‘2’;

 c2=’a’+’6’-‘3’;

 printf(“%c,%d\n”,c2,c1);

}

a)  输出无定值         b)  d,e

c)  e,f                 d)  d,101

 

33. C语言程序中出现条件分支语句if-else时,else与(C)组成配对关系。

 a)  同一复合语句内部的if         b)  在其之前任意的if

 c)  在其之前未配对的最近的if     d)  首行位置相同的if

 

34. 已知在ASCII代码中,字母A的序号为65,以下程序的输出结果是(  D )(选择一项)

  #include <stdio.h>

  main()

{

   char c1=’A’,c2=’Y’;

   printf(“%d,%d\n”,c1,c2);

}

a)  因输出格式不合法,输出错误信息    b)  6590

c)  A, Y                              d)  6589

 

35. 以下程序的输出结果是(   C )(选择一项)

main()

{

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

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

  printf(“%d,”,x[i][2-i]);

}

a159    b147     c357     d369

 

36. 以下程序的输出结果是(  A   )(选择一项)

main()

{

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

  printf(“%d\n”,*(p+2));

}

a) 3         b4         c1       d2

 

37. 以下程序的输出结果是(  B  )(选择一项)

main()

{

  int  x[3][3]={1,2,3,4,5,6,7,8,9},*p;

   p=x[1];

   p++;

    printf(“%d”, *p);

}

a2    b5     c7   d)不确定

 

38. 在C语言中,设有如下说明语句:

  struct stu

  {

   int a;

   float b;

  }stu_type;

  则以下说法不正确的是(  C  )(选择一项)

a)  struct是结构体类型的关键字

b)  struct stu是用户定义的结构体类型名

c)  stu_type是用户定义的结构体类型名

d)  a和b是结构体成员

 

39.  #include<stdio.h>

    struct abc{int a, b, c;};

    main()

    {

      struct  abc  ss[2]={{1,2,3,},{4,5,6}};

      printf(“%d\n”, ss[0].a+ss[1].b);

    }

    输出结果是( B )(选择一项)

a)  5 b)  6 c)  7 d)  8

 

40. 以下程序运行后的输出结果是(   B )。(选择一项)

 

 #include<stdio.h>

#define   N  4

void fun(int a[][N],im b[])

{

int i;

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

b[i]=a[i][i]-a[i][N-1-i];

)

void main()

{

int x[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;

fun(x,y);

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

printf(”%d,”,y[i]);printf("\n");

}

a)  -12,-3,0,0    

b)  -3,-1,1,3    

c)  0,1,2,3    

d)  -3,-3,-3,-3 

0 0