❶ C语言 自守数。任意输入一个自然数,判断是否自守数并输出
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void) {
int n, square, len;
char str[20];
printf("请输入一个自然数:");
scanf("%d", &n);
square = n * n;
sprintf(str, "%d", square);
len = strlen(str);
if (str[len-1] == '0' + n) {
printf("%d yes %d*%d=%d\n", n, n, n, square);
} else {
printf("%d no %d*%d=%d\n", n, n, n, square);
}
return 0;
}
在这里,你首先使用 scanf 函数从标准输入中读取一个自然数 n。然后,你计算 n 的平方 square,并将其转换为字符串 str。接下来,你比较字符串 str 的末尾字符是否等于字符 '0'+n,如果是,则说明 n 是自守数,你将打印一条消息,指出 n 是自守数,并输出 n 的平方;否则,你将打印一条消息,指出 n 不是自守数,并输出 n 的平方。最后,你使用 printf 函数将结果打印到标准输出中。