#include <stdio.h>
main( )
{
int a=123456,b;
while(a){b = a%10;
a /= 10;
switch(b){
default: printf(" %d", b++);
case 1: break;
case 2: printf(" %d", b++); break;
case 3: printf("%d", b++);
case 4: printf("%d",b++);
case 5: printf(" %d" , b++);}}}
主要是case大部分没有带break,会一直执行后续的case 代码
记住这个就好了
case后没有break就会往下穿透执行
#include <stdio.h>
main( )
{
int a=123456,b;
while(a){b = a%10;
a /= 10;
printf("\n");
printf("a:%d b:%d\n",a,b);
switch(b){
default: printf("%d \n", b++);
case 1: break;
case 2: printf("%d \n", b++); break;
case 3: printf("%d \n", b++);
case 4: printf("%d \n",b++);
case 5: printf("%d \n" , b++);}}}