用C语言编写一个程序,输入一个带2位的实数,将其整数部分和小数部分分离后输出
时间: 2023-05-23 15:05:42 浏览: 123
(以下为C语言代码实现):
```c
#include <stdio.h>
int main() {
float num;
printf("请输入一个带2位的实数:");
scanf("%f", &num);
int integer_part = (int)num; // 取整数部分
float decimal_part = num - integer_part; // 取小数部分
printf("整数部分:%d,小数部分:%.2f\n", integer_part, decimal_part);
return 0;
}
```
代码解析:
1. 首先,预处理指令 `#include <stdio.h>` 是必须的,因为我们要用到标准输入输出库函数 `printf` 和 `scanf`。
2. 声明一个实数变量 num。
3. 通过 `printf` 函数提示用户输入带2位的实数,并通过 `scanf` 函数将用户输入的数存入 num 变量中。
4. 因为题目要求要将整数部分和小数部分分离出来,所以我们定义一个整型变量 integer_part 存放整数部分,和一个浮点型变量 decimal_part 存放小数部分。
5. 取整数部分我们可以用强制类型转换 `(int)num`,强制将实数转为整数。
6. 取小数部分则可以用 num 减去它的整数部分。
7. 最后通过 `printf` 函数将整数部分和小数部分分别输出即可。注意,输出小数部分时要用 %.2f,保留两位小数。
相关问题
C语言编写一个程序:输入两个实数,将其整数部分交换后输出,结果保留2位小数。
可以回答这个问题。以下是C语言程序的代码:
```
#include <stdio.h>
#include <math.h>
int main()
{
double num1, num2;
int int1, int2;
printf("请输入两个实数:\n");
scanf("%lf %lf", &num1, &num2);
int1 = (int)num1;
int2 = (int)num2;
num1 = num1 - int1 + int2;
num2 = num2 - int2 + int1;
printf("交换整数部分后的结果为:%.2lf %.2lf\n", num1, num2);
return 0;
}
```
注意,这个程序只能交换两个实数的整数部分,如果要交换小数部分,需要进行更复杂的计算。
用C语言编写一个程序,输入一个带2位的实数,将其整数部分和小数部分分离后输出 例如:输入321.54,输出321.54=321+0.54
```
#include <stdio.h>
int main() {
float num;
int int_part;
float decimal_part;
printf("请输入一个带2位的实数:");
scanf("%f", &num);
int_part = (int) num;
decimal_part = num - int_part;
printf("%.2f = %d %.2f\n", num, int_part, decimal_part);
return 0;
}
```