|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
int main(void)
{
int m, k = 0, s = 0;
for (m = 1; m <= 4; m++)
{switch (m % 4)
{
case 0:
case 1:s += m; break;
case 2:
case 3:s -= m; break;
}
k += s;
}
printf("%d\n",k);
return 0;
}
为什么是-4....我口算是10(???
本帖最后由 小噗噗啊 于 2021-4-4 11:03 编辑
- #include<stdio.h>
- int main(void)
- {
- int m, k = 0, s = 0;
- for (m = 1; m <= 4; m++)
- {switch (m % 4)
- {
- case 0://单次运算是4
- case 1:s += m;break;//单次运算是8
- case 2://单次运算是14
- case 3:s -= m; break;// 单次运算是20
- }
- k += s;
- }
- printf("%d\n",k);
- return 0;
- }
复制代码
case 3 前面break返回值有2次,就要多加一次,例如说你把s += m;break;放在case 2后面,最后得出来的值就是8。
我也是刚学C没多久,我只能一步步给你试的,具体怎么得到的还是问老师最靠谱了,  ,如有帮助望采纳,谢谢!
|
|