首页 > 试题广场 >

整数的个位

[编程题]整数的个位
  • 热度指数:53748 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}给定一个整数 a,求该整数的个位数字,定义为该整数绝对值对 10 取余的结果。

输入描述:
\hspace{15pt}在一行中输入一个整数 a \left(0 \leq a \leq 10^4\right)


输出描述:
\hspace{15pt}输出一个整数,表示 a 的个位数字。
示例1

输入

114

输出

4

备注:
本题已于下方时间节点更新,请注意题解时效性:
1. 2025-06-03 优化题面文本与格式,修改数据范围为 -10^9 \leq a \leq 10^9
2. 2025-11-07 优化题面文本与格式,修改数据范围为 0 \leq a \leq 10^4。备注:因为本题的定义为新手入门题,原数据范围强制需要绝对值函数,脱离了入门打卡的初衷,因此恢复了原数据范围。
#include <stdio.h>

int main() {
    int a=0;
    scanf("%d",&a);
    printf("%d",a%10);
    return 0;
}

编辑于 2024-01-07 19:52:52 回复(0)
#include <stdio.h>

int test(int x)
{
    if (x> 10)
    {
        x = x % 10;
        test(x);
    }
    return x ;

}
int main()
{
    int a=0;
    while (scanf("%d", &a) != -1)
    {
        a=test(a);
        printf("%d", a);
    }
    return 0;
}
//使用递归来实现的
发表于 2023-10-15 19:17:06 回复(3)
#include <stdio.h>

int main() {
    int a=0;
    scanf("%d",&a);
    printf("%d",a%10);

    return 0;
}

直接取余,得到个位,不用判断。
发表于 2023-10-14 14:56:59 回复(3)
a=input()
print(a[-1])
发表于 2022-03-24 17:25:37 回复(0)
#include <iostream>
using namespace std;

int main() {
    int a;
    cin >> a;
    cout << (a>0?a:-a)%10 << endl;
}
// 64 位输出请用 printf("%lld")
发表于 2025-12-06 10:37:42 回复(0)
int main() {
    int a,b;

    scanf("%d\n\r", &a);

    b=(abs(a) % 10);  //取绝对值考虑复数的输入

    printf("%d\n\r",b);

    return 0;
}
发表于 2025-10-02 11:38:39 回复(0)
a=int(input())
x=str(a)
s=int(x[-1])
print(s)
发表于 2024-08-24 12:18:43 回复(0)
#include <stdio.h>

int main()
{
    int a = 0;
    scanf("%d", &a);
    printf("%d", a%10);//a➗10的余数
    return 0;
}

编辑于 2024-01-23 20:05:59 回复(0)
//给定一个整数求该整数的个位数字,定义为该整数绝对值对 
#include <stdio.h>

int main(){
    int a;
    printf("输入一个整数:");
    scanf("%d",&a);
    printf("此整数个位上的数字为:",a%10);
    
    return 0;
}

发表于 2026-04-29 07:24:47 回复(1)
using System;

namespace ConsoleApp2 {
public class profrom {

    public static void Main() {
      int a=int.Parse(Console.ReadLine());
        Console.WriteLine(a%10);
        Console.ReadKey();
    }
}
}
发表于 2026-04-27 16:27:38 回复(0)
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
       int a=in.nextInt();
       int b=a%10;
       System.out.println(b);
        }
    }
我这么写可以吗?通过了
发表于 2026-04-07 14:50:50 回复(0)
using System;
public class Program {
    public static void Main() {
      int a=int.Parse(Console.ReadLine());
      int result=Math.Abs(a)%10;
      Console.Write($"{result}");
    }
}
发表于 2026-04-02 22:19:24 回复(0)
#include <stdio.h>

int main() {
   int a;
   scanf("%d",&a);
   printf("%d\n",(a % 10));
    return 0;
}
发表于 2026-03-27 14:14:47 回复(2)
a = int(input())
b = a // 10
c = a - 10*b
print(c)
发表于 2026-03-26 12:21:39 回复(0)
#include <iostream>
#include "string"
using namespace std;

int main() {
   string a;
   cin>>a;
   int m=a.size();
   cout<<a[m-1]<<endl;
}
发表于 2026-03-04 21:46:19 回复(0)
a = int(input())
print(abs(a)%10)
发表于 2026-03-04 18:43:23 回复(0)
#include<stdio.h>
int main()
{
    int a;
    scanf("%d",&a);
    printf("%d",a%10);
    return 0;
}
发表于 2026-02-06 10:14:33 回复(0)
a=input()
print(a[-1])

发表于 2026-01-13 15:43:14 回复(0)
#include <stdio.h>
int main()
{
    int a;
    scanf("%d", &a);
    int A = abs(a);
    printf("%d\n", A % 10);
}
发表于 2026-01-07 20:39:18 回复(0)
#include <stdio.h>

int main() {
	int a;
	if (scanf("%d", &a) != 1) {
		return 1;
	}
	if (!(0 <= a && a <= 1e4)) {
		return 1;
	}
	printf("%d", a % 10);
	return 0;
}

发表于 2026-01-06 14:26:25 回复(0)