
3个回答
2019-03-11
展开全部
第一题的结果输出 48
#include <stdio.h>
int main(void) {
int k =1, n = 264;
do {
k *= n % 10; // k 一直乘以 n%10的余数 4 * 6 * 2 = 48
n /= 10; // n 一直除以 10
} while(n);
// k 输出48
printf("k=%d\n", k);
return 0;
}
第二题的结果输出 6 和 13
#include <stdio.h>
int func(int a, int b);
int main(void) {
int k = 1, m = 2, p1, p2;
p1 = func(k, m);
p2 = func(k, m);
printf("%d, %d\n", p1, p2);
return 0;
}
int func(int a, int b) {
static int m = 0, i = 2; //静态变量只声明一次
i += m +1; // 第一次 i= 2 + 0 + 1 等于 3; 第二次 i = 3 + 6 + 1 等于10;
m = i + a + b; // 第一次 m = 3 + 1 + 2 等于6 第二次 m = 10 + 1 + 2 = 13
return m;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你好,请问可以发这份试题给我吗?谢谢🙏
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询