正确答案: C

10

题目:若int k=8;则执行下列程序后,变量k的正确结果是main(){ int k=8; switch(k)  { case 9:k+=1;  case 10:k+=1;  default:k+=1;  case 11:k+=1;break; } printf("%d\n",k);}

解析:在本题中,程序首先定义了一个整型变量k,并赋初值8,然后执行switch选择结构。由于k的初值为8,与程序中给出的选择结构不匹配,那么只能执行default结构,即执行k+=1,将变量k的值变为9,执行完后,由于没有break语句,程序接着往下执行,执行case 11结构,将变量k的值再加1,然后执行break语句,跳出switch选择结构。此时变量k的值为10,然后执行输出语句输出k的值。因此,本题程序的最后输出结果为10,答案选C。

查看原题

举一反三的答案和解析:

  • [单选题]下列关于运算符重载不正确的是( )。
  • 运算符重载能改变对预定义类型数据的操作方式

  • 解析:D。【解析】本题考查C++语言中操作符重载的概念。运算符重载的关键字是operator。运算符重载的规则是重载时不能改变运算符的操作数个数,不能改变运算符的优先级,不能改变运算符的结合性,不能改变对预定义类型数据的操作方式。

  • [单选题]下列程序段的执行结果为( )。 a=1 b=0 Select Case a Case 1 Select Case b Case 0 Print"**1**" Case 1 Print"**1**" End Select Case 2 Print"**2**" End Select
  • **0**


  • [单选题]单击命令按钮执行下列程序,其输出结果是( )。 Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer a=3 b=4 c=5 Print SecProc(c,b,A)End Sub Function FirProc(x As Integer, y As Integer, z As Integer) FirProc=2*x+y+3*Z End Function Function SecProc(x As Integer,y As Integer, z As Integer) SecProc=FirProc(z,x,y)+x End Function
  • 28

  • 解析:解析:本题是在Command1过程中调用SecProc函数,而在SecProc函数中又调用了FirProc函数。函数调用时,实参和形参要一一对应传递.程序运行过程如下:①PrintSecProc(c,b,A)→PrintSecProc(5,4,3);②SecProc=FirProc(z,x,y)+x→SecProc=FirProc(3,5,4)+5;③FirProc=2*x+y+3*z→FirProc=2*3+5+3*4=23;④SecProc=28→PrintSecProc(c,b,A)→Print28。形参是在被调用的Sub,Function过程中定义的参数名;实参则是在调用的Sub或Function过程中定义的参数名。

  • 推荐下载科目: 微软认证 思科认证 JAVA认证 华为认证 计算机一级 软考初级 职称计算机 通信工程师 计算机操作员中级 计算机辅助设计
    @2019-2026 不凡考网 www.zhukaozhuanjia.com 蜀ICP备20012290号-2