下列给定程序中,函数fun的功能是:从低位开始依次取出长整型变量s中偶数位上的数,构成一个新数存放在t中。高位仍在高位,低位仍在低位。 例如,当S中的数为7654321时,t中的数为642。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文

admin2020-06-16  19

问题 下列给定程序中,函数fun的功能是:从低位开始依次取出长整型变量s中偶数位上的数,构成一个新数存放在t中。高位仍在高位,低位仍在低位。
例如,当S中的数为7654321时,t中的数为642。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MOD11.C中,不得增行或删行,也不得更改程序的结构!
#include
/**********found**********/
void fun(10ng s,long t)
{long s1=10;
s=s/10;
*t=s%10:
while(s>0)
{s=s/100;
*t=s%10*s1+*t;
/**********found**********/
s1=s1*100;
}
}
main()
{long s,t;
printf(’’\nPlease enter s:’’);scanf(’’%1d’’,&s);
fun(s,&t);
printf(’’Ihe result is:%ld\n’’,t);  
}

选项

答案1.void fun(1ong s,long*t) 2.s1=s1*10;

解析 1.主函数中调用函数的参数为地址,因此函数fun的形式参数应为指针类型。
2.重新组合一个数,从十位开始,然后百位,依次类推。每增加一位数,原数值需乘10,即s1=s1*10;。
转载请注明原文地址:https://kaotiyun.com/show/hiCp777K
0

最新回复(0)