柠檬试题库
search
首页 计算机 公务员 驾照 关于

有以下程序: #include main() { int x=1, y=0, a=0, b=0;    switch (x)    { case 1:     switch(y)     { case 0: a++; break;       case 1: b++; break;       }      case 2: a++; b++; break;      case 3: a++; b++;   }   printf("a=%d, b=%d\n", a, b); } 程序的运行结果是(  )。


  • A.a=2,b=2
  • B.a=2,b=1
  • C.a=1,b=1
  • D.a=1,b=0
热度🔥901
参考答案:B
解析:

【解析】case常量表达式只是起语句标号作用,并不是该处进行条件判断。在执行switch语句时,根据switch的表达式,找到与之匹配的case语句,就从此case子句执行下去,不在进行判断,直到碰到break或函数结束为止。所以执行内层switch(y)时只执行了a++,此时a的值为1。然后执行外层case 2语句的a++;b++;a为2,b为1。所以结果为B)。
复制题目向AI提问


扫码免费计算机二级刷题
2025年计算机等级考试题库
推荐 下列关于计算机病毒的叙述中,错误的是()。 关系模型是数据库系统最常用的一种数据模型。下列关于关系模型的说法,错误的是()。 在Pthread线程包的使用中,当用户编程创建一个新的线程时,需要使用的线程库函数是       小李是公司的出纳,单位没有购买财务软件,因此她只能用手工记账。为了节省时间并保证记账的准确性,小李使用Excel编制银行存款日记账。 请根据该公司九月份的"银行流水账表格.docx",并按照下述要求,在Excel中建立银行存款日记账: 1. 按照表中所示依次输入原始数据,其中:在"月"列中以填充的方式输入"九",将表中的数值的格式设为数值、保留2位小数。 2 .输入并填充公式:在"余额"列输入计算公式,余额=上期余额+本期借方-本期贷方,以自动填充方式生成其他公式。 3."方向列中"只能有借、贷、平三种选择,首先用数据有效性控制该列的输入范围为借、贷、平三种中的一种,然后通过IF函数输入"方向"列内容,判断条件如下所列: 余额 大于0 等于0 小于0 方向 借 平 贷 4.设置格式:将第一行中的各个标题居中显示;为数据列表自动套用格式后将其转换为区域。 5.通过分类汇总,按日计算借方、贷方发生额总计并将汇总行放于明细数据下方。 6.以文件名"银行存款日记账.xlsx"进行保存。 设栈的顺序存储空间为 S(1:m),初始状态为top=0。现经过一系列正常的入栈与退栈操作后,top=m+1,则栈中的元素个数为( )。