C语言如何提取输入数字的个位数字?

99ANYc3cd6
预计阅读时长 5 分钟
位置: 首页 C语言 正文

C语言获取一个数字的个位数字

在C语言中,获取一个整数的个位数字非常简单,以下是几种常见的方法:

c语言 输入数字 个位数字
(图片来源网络,侵删)

方法1:使用模运算(推荐)

#include <stdio.h>
int main() {
    int num;
    printf("请输入一个整数: ");
    scanf("%d", &num);
    int units_digit = num % 10;  // 模10运算得到个位数字
    printf("个位数字是: %d\n", units_digit);
    return 0;
}

方法2:使用除法和取余

#include <stdio.h>
int main() {
    int num;
    printf("请输入一个整数: ");
    scanf("%d", &num);
    // 先取绝对值,处理负数情况
    num = (num < 0) ? -num : num;
    int units_digit = num % 10;
    printf("个位数字是: %d\n", units_digit);
    return 0;
}

方法3:转换为字符串

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main() {
    char num_str[20];
    printf("请输入一个整数: ");
    scanf("%s", num_str);
    // 获取字符串最后一个字符
    char last_char = num_str[strlen(num_str) - 1];
    // 转换为数字
    int units_digit = last_char - '0';
    printf("个位数字是: %d\n", units_digit);
    return 0;
}

注意事项

  1. 对于负数,模运算会返回负数的个位数字(如-123 % 10 = -3),如果需要正数的个位数字,可以先取绝对值。
  2. 方法3可以处理任意长度的数字(只要不超过字符串缓冲区大小),但效率较低。
  3. 如果输入的不是纯数字,方法3可能会出错,需要添加额外的验证代码。

最常用和推荐的是方法1,因为它简洁高效且适用于大多数情况。

c语言 输入数字 个位数字
(图片来源网络,侵删)
-- 展开阅读全文 --
头像
dede文章页如何调用专题?
« 上一篇 03-08
C语言中a 10是什么意思?
下一篇 » 03-08

相关文章

取消
微信二维码
支付宝二维码

目录[+]