[急求助]C语言程序编程题,请高手帮忙解答下。!

编程题:函数fun的功能是:将两个两位数的正整数a,b合并形成一个整数放在c中,合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c... 编程题: 函数fun的功能是:将两个两位数的正整数a,b合并形成一个整数放在c中,合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。 例如:当a=45,b=12。调用该函数后,c=1524。 注意:部分源程序在文件PROG1.C文件中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 [PROG1.C] #include<stdio.h> #include<math.h> void fun(int a,int b,long *c) { } main() {int a,b;long c; printf("Input a,b:"); scanf("%d%d",&a,&b); fun(a,b&c); printf("The result is:%ld\n",c); } 请高手给个正解,并且把每个步骤的原因注清晰,小弟在此谢谢啦~! 展开
 我来答
鄂纵陶珺
2019-03-14 · TA获得超过3821个赞
知道大有可为答主
回答量:3128
采纳率:32%
帮助的人:190万
展开全部
只要输入一行就行了:
#include<stdio.h>
#include<math.h>
void
fun(int
a,int
b,long
*c)
{
*c=a%10*100+a/10+b/10*1000+b%10*10;
/*解释:a%10的意思是a除以10剩下的余数,即a的个位数,若a是45,a%10就是5,再乘以100即是500;a/10就是十位数,即4,原因是它是向下取整,45/10虽是4.5,但向下取整就将小数点后的都等于零;b/10和上面的a一样是取b的十位数,若b为12,b/10就是1,b/10*1000就是1000;b%10就是2,再乘以2就是20。最后将500+4+1000+20=1524*/
}
void
main()
{
int
a,b;long
c;
printf("Input
a,b:");
scanf("%d%d",&a,&b);
fun(a,b,&c);
printf("The
result
is:%ld\n",c);
getch();
return;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式