首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

有关问题

2012-03-17 
问题运行以下程序#include stdio.hvoidmain(){intcwhile((cgetchar())! \n )switch(c- 2 ){case0:cas

问题
运行以下程序
      #include <stdio.h>
void   main()
{int   c;
while((c=getchar())!= '\n ')
switch(c- '2 ')
{case   0:
  case   1:putchar   (c+4);
  case   2:putchar   (c+4);break;
  case   3:putchar   (c+3);
  default:putchar   (c+2);break;
}
printf( "\n ");
}
输入2473   为什么输出668977?

[解决办法]
输入2的时候运行了下面几条语句.所以会输出:66
case 0:
case 1:putchar (c+4);
case 2:putchar (c+4);break;

输入4的时候运行了下面几句:所以会输出:8
case 2:putchar (c+4);break;

输入7的时候运行了default几句:所以输出9

default:putchar (c+2);break;

输入3的时候运行了下面几句:所以会输77

case 1:putchar (c+4);
case 2:putchar (c+4);break;


把这些所有输出连起来不就是楼主所说的输出值么?

热点排行