用c语言编写程序,输入两个正整数m和n,合并成一个正整数p。合并的方式是:将m的十位和个位数字放在p的百位和个位上,将n的十位和个位数字放在p的千位和十位上。
时间: 2024-10-16 09:12:29 浏览: 81
C语言程序设计-将两个两位数的正整数a、b合并形成一个整数放在c中;合并的方式是
5星 · 资源好评率100%
在C语言中,你可以通过数组操作和字符串转换来实现这个功能。首先,你需要读取用户的输入m和n,然后分别处理它们的十位和个位,最后组合成一个新的整数p。下面是一个简单的示例程序:
```c
#include <stdio.h>
#include <string.h>
// 函数用于合并两个两位数
void mergeTwoNumbers(int num1, int num2, char* result) {
// 将num1的十位和个位作为临时整数
int temp = num1 % 10;
// 将num1的十位移动到高位
num1 /= 10;
// 将num2的两个数字直接添加到结果字符串
sprintf(result + 2, "%d", num2);
// 添加num1的个位到结果字符串
sprintf(result + 4, "%d", temp);
// 结果字符串的前导零保持原有数值的长度
for (int i = 0; i < strlen(result); ++i) {
if (result[i] == '0') continue;
break;
}
}
int main() {
int m, n;
printf("请输入第一个正整数m: ");
scanf("%d", &m);
printf("请输入第二个正整数n: ");
scanf("%d", &n);
// 创建一个足够大的字符数组存储结果
char p[6];
memset(p, 0, sizeof(p));
// 合并两个数
mergeTwoNumbers(m, n, p);
// 输出结果,注意需要转换回整数形式
int mergedNum = atoi(p);
printf("合并后的正整数p: %d\n", mergedNum);
return 0;
}
```
在这个程序中,我们首先读取用户输入的两个数字,然后创建一个空字符串`p`,接着通过`mergeTwoNumbers`函数将这两个数字合并到`p`里。最后,我们将`p`转换为整数并输出。
阅读全文