#include<stdio.h>
main()
{
int c=0,k;
for(k=1;k<3;k++)
switch(k)
{
default: c+=k;
case 2: c++; break;
case 4: c+=2; break;
}
printf("%d",c);
for语句是循环2次,第一次C=1,第二次C++,c=2,是我哪款理解错了吗
#include<stdio.h>
main()
{
int c=0,k;
for(k=1;k<3;k++)
switch(k)
{
default: c+=k;
case 2: c++; break;
case 4: c+=2; break;
}
printf("%d",c);
for语句是循环2次,第一次C=1,第二次C++,c=2,是我哪款理解错了吗
因为你default在前面,然后没有break,所以第一次循环是执行c+=k后又执行了case 2才跳出switch