求教,这个程序的运行过程

求教,这个程序的运行过程

问题描述:

#include

int main()
{
int s;
scanf("%d",&s);
while (s>0)
{
switch (s)
{
case 1: printf("%d",s+5);
case 2:printf("%d",s+4);break;
case 3:printf("%d",s+3);
default : printf("%d",s+1);break;
}
scanf("%d",&s);
}
}

 问题很简单,由于你没有换行,
 你输入的是1 ,执行case1 ,但是case1 ,没有break;继续执行case2,所以输出的是6和5,但是你有没有换行或制表符,所以连在一起输出
 ,你看到的就是65,
 你输入3也一样的原因,会输出64

等待输入一个数字,如果数字不大于零则退出程序;
如果大于零则打印数字:
数字=1,打印1+5,就是6
数字=2,打印2+4,还是6
数字=3,打印3+3,还是6
其他数字,打印s+1,就是数字加1后的值;
循环执行以上流程,直到输入的数字小于等于0

我们在硬盘上放置的exe文件,双击可以使其装载到内存区域。然后操作系统会识别这个exe文件的main方法,然后执行一步步的操作。
         内存通常分为四部分:
                1:code segment (代码区)。我们装载进来的代码都放置到了这个区域。
                2:data segment (静态区)。静态变量以及字符串常量都放置到了这个......
答案就在这里:程序的运行过程
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。