❶ 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 函數將結果列印到標准輸出中。