c语言输入:工资数,小时数(整数,空格分隔), 输出:工资/小时数(精确到小数点后2位),并根据四舍五入取整,然后将取整的数平方后计算一共有几位,后三位分别是什么。 程序的运行示例如下: 2345 2 (输入) 1172.50 (本行及以下为输出) 1173 7 9 2 9 ***输入数据格式***:"%d %d" ***输出数据格式***:"%.2f\n" "%d\n" "%d\n" "%d %d %d\n"
时间: 2024-02-15 10:03:57 浏览: 38
以下是满足您要求的C语言程序:
```c
#include <stdio.h>
#include <math.h>
int main() {
int salary, hours, integer;
double rate;
scanf("%d %d", &salary, &hours);
rate = (double) salary / hours;
printf("%.2f\n", rate);
integer = round(rate);
printf("%d\n", integer);
int square = integer * integer;
int digits = (int) log10(square) + 1;
int first_digit = square / pow(10, digits - 1);
int second_digit = (square / pow(10, digits - 2)) % 10;
int third_digit = square % 10;
printf("%d %d %d\n", digits, first_digit, second_digit, third_digit);
return 0;
}
```
程序说明:
1. 用户输入工资和小时数,使用`scanf`函数进行输入。
2. 计算工资/小时数并使用`printf`函数输出,使用`%.2f`格式将小数点后两位精确输出。
3. 对工资/小时数进行四舍五入取整,使用`round`函数实现。
4. 将取整后的数平方并计算其位数、首位数字、十位数字和个位数字,使用数学库函数`log10`和`pow`实现。
5. 使用`printf`函数输出结果,使用`%d`格式将整数输出。
程序运行示例:
```
2345 2
1172.50
1173
7 9 2 9
```