写一段c语言代码,判断一个数是否为整数
时间: 2023-09-18 22:12:36 浏览: 102
好的,以下是C语言代码,用来判断一个数是否为整数:
```
#include <stdio.h>
int main() {
double num;
printf("请输入一个数字:\n");
scanf("%lf", &num);
if (num == (int)num) {
printf("%.0f是一个整数。\n", num);
} else {
printf("%.2f不是一个整数。\n", num);
}
return 0;
}
```
你可以输入任意数字,这个程序会判断它是否是一个整数,并给出相应的输出。
相关问题
写一段C语言代码来判断一个数开根号后是否为整数
以下是C语言代码,用于判断一个数开根号后是否为整数:
```c
#include <stdio.h>
#include <math.h>
int main() {
double num;
printf("请输入一个数:");
scanf("%lf", &num);
double sqrt_num = sqrt(num);
if (sqrt_num == (int)sqrt_num) {
printf("%lf的开根号为%d,是一个整数。\n", num, (int)sqrt_num);
} else {
printf("%lf的开根号为%lf,不是一个整数。\n", num, sqrt_num);
}
return 0;
}
```
请注意,此代码仅适用于正数。如果要判断负数或零的情况,请根据实际情况进行修改。
给我写一段c语言代码,写一个函数判断这个数是不是水仙花数
当然,这是一个简单的C语言函数,用于判断一个整数是否为水仙花数:
```c
#include <stdio.h>
int is narcissistic_number(int num) {
if (num < 100 || num > 999) { // 判断是否为三位数
return 0; // 非三位数不是水仙花数
}
int digits[3], sum = 0;
int i;
// 分离每个位数
while (num != 0) {
digits[i] = num % 10;
sum += digits[i] * digits[i] * digits[i];
num /= 10;
i++;
}
// 检查三位数的每一位的立方和是否等于原数
return sum == num;
}
int main() {
int number;
printf("请输入一个三位数: ");
scanf("%d", &number);
if (is_narcissistic_number(number)) {
printf("%d 是水仙花数.\n", number);
} else {
printf("%d 不是水仙花数.\n", number);
}
return 0;
}
```
在这个代码中,`is_narcissistic_number`函数首先检查输入的数是否为三位数,然后分离出每个位上的数字并计算它们立方和,最后比较这个和是否等于原来的数。
阅读全文