给定程序MODl1.C中函数fun的功能是:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。例如:当s中的数为2736598时,t中的数为:2358。
#include<conio.h>
#include<stdio.h>
/************found************/
void fun(long s,long t)
long s1=10;
*t=s%10;
while(s>0)
s=s/l00;
*t=S%10*s1+*t;
/************found************/
s1=s1*100;
main()
long s,t;
clrscr();
printf ("\nPlease enter s:");
scanf("%ld",&s);
fun(s,&t);
printf("The result is:%1d\n",t);
参考答案:void fun(long s,long t) 改为 void fun(long s,long*t)
sA=sA*A00; 改为 sA=sA*A0;
解析: 从fun函数可以看出,变量t应该是指针变量。因此,在形参表列中,t之前应该加“*”;从s中取出奇数位构建新数是逐位进行,而不是跳位的。因此,s1应该乘以10。