编写一个程序,其功能是:将两个两位数的正整数a,b合并成一个整数放在c中.合并的方式是:

2024-12-18 12:44:58
推荐回答(5个)
回答1:

/*

编写一个程序,其功能是:将两个两位数的正整数a、b合并成一个整数放在c中。

合并的方式是:将a中的十位和个位数一次放在c数的千位和十位上,

b数的十位和个位数依次放在c数的百位和个位上。

例如:a=45,b=12时,执行程序后,c=4152.

*/ 

#include

int main()

{

    int i, a, b, c[4];

    printf("Please input num: ");

    scanf("%d", &a);

    printf("\nPlease input num: ");

    scanf("%d", &b);

    c[0] = a / 10;//a中十位放在c的千位 

    c[2] = a % 10;// a中个位放在c的十位 

    c[1] = b / 10;//b中十位放在c的百位 

    c[3] = b % 10;// b中个位放在c的个位 

    for(i = 0; i < 4; i++)

        printf("%d", c[i]);

    printf("\n"); 

    return 0; 

}


效果图

PS:若有不明白的地方,可以追问

回答2:

#include
void fun(int a,int b,long*c)
{
*c=(a/10)*1000+(b%10)*100+(a%10)*10+(b/10);
}
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);
}
给楼主一个完整的答案!其他的答案不解释,能不能使用,用C++试一试便知!

回答3:

#include
int f(int a,int b)
{
int c,i,j,k,l;
i=a/10;
j=a%10;
k=b/10;
l=b%10;
c=10*i+j*1000+k+l*100;
return c;
}
int main()
{
int a,b,c;
scanf("%d%d",&a,&b);
c=f(a,b);
printf("c=%d\n",c);
return 0;
}

回答4:

void fun(int a ,int b,long *c)
{
*c=0;
*c+=b%10;
*c*=10;
*c+=b/10;
*c*=10;
*c+=a%10;
*c=*c*10+a/10;

}

**************************************

clrscr()的声明在conio.h文件中,请包含该文件.

回答5:

void fun(int a ,int b,long *c)
{
*c=a%100+(b%10000)/100*100;

}
%符号可以取出后面的几位,%(n)的x次方,n为进制,x为后几位。
/整除是取去掉后几位的前面的几位。