教学设计题
函数fun的功能是:将a、b两个两位正整数合并成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位数依次放在变量c的干位和十位上。
例如,当a=45,b=12,调用该函数后c=1425。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<conio.h>
#include<stdio.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);
}
【正确答案】void fun(int a,int b,long*c) { /*b%10获取b的个位,a/10获取a的十位a%10获取a的个位,b/10获取b的十位*/ *c=a%10+(b%10)*10+(a/10)*100+(b/10)*1000; }
【答案解析】[考点] 本题关键字有:某数的各位上数值的表示方法;已知某数的各个位数值如何表示该数值;指针型变量。 由于a和b都是两位数,所以对它们除,对10对求余可得到它们的十位数和个位数,也就是c的各位数,然后将其组合成c,需注意c是指针。