第8题
下面程序的功能是从键盘任意输入一个4位数x,编程计算x的每一位数字相加之和(忽略整数前的正负号)。例如,输入x为1234,则由1234分离出其千位1、百位2、十位3、个位4,然后计算1+2+3+4=10,并输出10。程序的运行结果如下: Input data is:-4213↙ The sum of the total bit is 10 按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。 #include <stdio.h> #include <math.h> int main() { int i1, i2, i3, i4, k, n; printf("Input data is:"); scanf("%d", &n); k = fabs(n); //取绝对值 i1 = ___________; //分离出千位 i2 = ___________; //分离出百位 i3 = ___________; //分离出十位 i4 = ___________; //分离出个位 printf("The sum of the total bit is %d\n", i1 + i2 + i3 + i4); return 0; }
A、第9行: k / 1000 第10行: (k - i1 * 1000) / 100 第11行: (k - i1 * 1000 - i2 * 100) / 10 第12行: k % 10
B、第9行: k % 1000 第10行: (k - i1 * 100) / 10 第11行: (k - i1 * 1000 - i2 * 100) % 10 第12行: k % 10
C、第9行: k % 100 第10行: (k - i1 * 1000) / 100 第11行: k / 10 第12行: (k - i1 * 100 - i2 * 10) / 10
D、第9行: k % 10 第10行: (k - i1 * 1000) / 10 第11行: (k - i1 * 1000 - i2 * 100) / 10 第12行: k / 10
第9题
从键盘任意输入一个3位整数,编程计算并输出它的逆序数(忽略整数前的正负号)。例如,输入-123,则忽略负号,由123分离出其百位1、十位2、个位3,然后计算3*100+2*10+1 = 321,并输出321。按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。#include <math.h> #include <stdio.h> int main() { int x, b0, b1, b2, y; printf("Input x:"); scanf("%d", &x); x = (int)fabs(x); b2 = ________; /* 计算百位数字 */ b1 = _________; /* 计算十位数字 */ b0 = _________; /* 计算个位数字 */ y = b2 + b1*10 + b0*100; printf("y = %d\n",y); return 0; }
A、第10行: x / 100 第12行: (x - b2 * 100) / 10 第14行: x % 10
B、第10行: x % 100 第12行: (x - b2 * 100) / 10 第14行: x / 10
C、第10行: x / 100 第12行: (x - b2 * 100) % 10 第14行: x / 10
D、第10行: x / 10 第12行: (x - b2 * 10) / 10 第14行: x % 100
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!