用c语言编写函数 fun (num),其中num是一个n位数,函数功能是:求整数num点的后n-1位,如果num是一位数则返回 0,要求输入输出均在主函数中完成
时间: 2023-11-27 12:54:55 浏览: 87
以下是用 C 语言编写的函数 fun(num) 的代码实现:
```c
int fun(int num)
{
if (num < 10) // 若 num 是一位数,则返回 0
return 0;
int n = 1;
int temp = num / 10;
while (temp > 0) // 计算 num 的位数 n
{
n++;
temp /= 10;
}
return num % (int)pow(10, n-1); // 返回 num 的后 n-1 位
}
```
在主函数中,可按以下方式调用该函数并输出结果:
```c
#include <stdio.h>
#include <math.h>
int fun(int num) // 函数 fun 的代码实现
{
// ...(同上)
}
int main()
{
int num;
printf("请输入一个整数 num:");
scanf("%d", &num);
int result = fun(num);
printf("整数 num 的后 %d 位为:%d\n", (result == 0) ? 1 : (int)log10(result)+1, result);
return 0;
}
```
注意,上述代码中使用了数学库函数 `pow()` 和 `log10()`,需要事先包含头文件 `<math.h>`。同时,为了避免整数除法产生的小数部分,上述代码中对 `pow(10, n-1)` 的结果进行了强制类型转换,以得到正确的整数结果。
阅读全文