
题目:给定程序MODI1.C中函数fun的功能是: 将长整型数中每一位上为 5
题目:给定程序MODI1.C中函数fun的功能是:将长整型数中每一位上为偶数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为:87653...
题目:给定程序MODI1.C中函数fun的功能是:
将长整型数中每一位上为偶数的数依次取出,
构成一个新数放在t中。高位仍在高位,低位
仍在低位。
例如,当s中的数为:87653142时,t中的数为:
8642。
--------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序
的结构。
------------------------------------------------------*
#include <stdio.h>
void fun (long s, long *t)
{ int d;
long s1=1;
*t=0;
while(s>0)
{ d=s%10;
if(d%2==0)
{ *t=d*s1+*t;
s1*=10;
}
s/=10;
}}
主函数就省了哈*^_^*
没看懂
*t=d*s1+*t是什么意思 展开
将长整型数中每一位上为偶数的数依次取出,
构成一个新数放在t中。高位仍在高位,低位
仍在低位。
例如,当s中的数为:87653142时,t中的数为:
8642。
--------------------------------------------------------
注意:不可以增加或删除程序行,也不可以更改程序
的结构。
------------------------------------------------------*
#include <stdio.h>
void fun (long s, long *t)
{ int d;
long s1=1;
*t=0;
while(s>0)
{ d=s%10;
if(d%2==0)
{ *t=d*s1+*t;
s1*=10;
}
s/=10;
}}
主函数就省了哈*^_^*
没看懂
*t=d*s1+*t是什么意思 展开
展开全部
以s=87653142为例,
d是指取出的各位偶数,从低位开始取,即d依次等于2、4、6、8
*t是最终保存的结果,即8642
s1是一个基数,变化规律是1、10、100、1000...
*t = d * s1 + *t的意思是取出s中的当前偶数数字,将其乘以基数,再加上上一次的*t。
变化过程如下:
*t = 2 * 1 + 0 = 2
*t = 4 * 10 + 2 = 42
*t = 6 * 100 + 42 = 642
*t = 8 * 1000 + 642 = 8642
d是指取出的各位偶数,从低位开始取,即d依次等于2、4、6、8
*t是最终保存的结果,即8642
s1是一个基数,变化规律是1、10、100、1000...
*t = d * s1 + *t的意思是取出s中的当前偶数数字,将其乘以基数,再加上上一次的*t。
变化过程如下:
*t = 2 * 1 + 0 = 2
*t = 4 * 10 + 2 = 42
*t = 6 * 100 + 42 = 642
*t = 8 * 1000 + 642 = 8642
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询