电脑网络 手机数码 生活 游戏 体育运动 明星影音 休闲爱好 文化艺术 就业职场 教育科学 健康医疗 商业理财 情感家庭 地区 其他

c语言解析

2023-11-30 21:05:21

char c=A;int k=0

 while(c<D)

 switch(c++)

caseA k++;continue

caseB;k+=2

casec k--;break

default k/=3

k++

运行k为

好评回答

这个程序过程略有复杂
 首先考核你对while,case,break,continue,++的理解
 整个程序执行过程如下:
 1.while(c&ltD)条件成立
   swtich(c++) 此时c是后++,它仍为A,语句结束后c==B
   所以执行
    case A:
     k++;  //k=1
    然后一个 continue;回到while(c)处
 2.火社势果模while(c&ltD)
   由于上面的c++,所以c==B,仍符合循环条件,继
   swtich(c++) 此时c是后++,它为B,语句结束后c==C
  case A:条件不成立,直接执行
  case B:
   k+=2; //k=3;
  但由于没有break;继续执行
  case C: 
    k--; //k=2
 由break;退出switch,回到while
 3.while(c&ltD)
  此时c==C仍小于D,所以继续执行
 swtich(c++) 此时c是后++,它为C,语句结束后c==D
 直接转到
  case C: 
     k--; //k=1
     再由break;退出switch,回到while 
4.    while(c&ltD) 
  此时c==D,条件不成立,退出循环
  
而default不会执行
所以最终结果为
k=1
   

其他回答

k++自增一,希望帮到您

相关推荐
  • C语言程序解析?
  • C语言分析
  • c语言小游戏代码?
  • C语言 整数分析?
  • c语言全面解析指针,十个知识点整理
  • c语言全面解析十个知识点大学生谨记
  • 求一个c语言小游戏代码
  • © 融合问答