首页 > 试题广场 >

浮点数的个位数字

[编程题]浮点数的个位数字
  • 热度指数:51460 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个浮点数,要求得到该浮点数的个位数。

数据范围:

输入描述:
一行,包括一个浮点数。


输出描述:
一行,包含一个整数,为输入浮点数对应的个位数。
示例1

输入

13.141

输出

3
#include <stdio.h>
int main (void)
{
    double a;
    scanf("%lf", &a);
    printf("%d", (int)a%10);
    return 0;
}

发表于 2022-07-25 13:46:40 回复(0)
#include <iostream>
using namespace std;

int main() {
	float f;
	cin >> f;
	cout << (int)f % 10 << endl;

	return 0;
}

发表于 2021-09-16 22:42:22 回复(2)
a = float(input())
print(int(a%10))

发表于 2020-11-21 13:35:02 回复(0)
import java.util.Scanner;

public class Main{

    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        double num=scanner.nextDouble();
        String str = String.valueOf(num);
        //按小数点分隔数字字符串
        String[] split = str.split("\\.");
        //输出小数点前一位
        System.out.println(split[0].charAt(split[0].length()-1));
    }


}
发表于 2020-03-22 14:07:26 回复(0)
#include<stdio.h>
int main(){
    float a;
    int b;
    scanf("%f",&a);
    b = (int)a;
    printf("%d",b%10);
}
发表于 2020-03-24 15:30:38 回复(4)
a,_=input().split('.')
print(a[-1])

发表于 2020-09-16 00:13:17 回复(1)
#include<stdio.h>
int main()
{
float a;
scanf("%f",&a);
int ge=(int)a%10;//%是整数的取余
printf("%d",ge);
return 0;
}
发表于 2024-10-14 18:00:27 回复(0)
#include <stdio.h>

int main() 
{
    float a = 0.0f; 

    scanf("%f", &a);

    printf("%d\n", (int)a % 10);

    return 0;
}

编辑于 2024-02-23 12:31:16 回复(2)
#include <stdio.h>

int main() 
{
    double a = 0.0;
    int b = 0;
    int c = 0;
    scanf("%lf",&a);
    if (a < 10)
    {
        b = (int) a;
        printf("%d\n",b);
    }   
    else if (a >= 10 && a <= 200 )
    {
        b = (int) a;
        printf("%d\n",c = b % 10);
    }
    return 0;
}
发表于 2022-11-13 21:19:22 回复(0)
#include <stdio.h>
int main()
{
    float f;
    scanf("%f",&f);
    printf("%d",(int)f%10);
    return 0;
}


发表于 2022-08-04 00:18:46 回复(0)
方法一:
# a,b=input().split('.')  #按照点号把字符分成两部分内容
# print("%s"%a[-1])  #直接对整数部分的个位数提取出来
方法二:
a = float(input())
print(int(a%10))  #对数除以10取余数的操作
发表于 2022-03-04 22:29:19 回复(0)
a,b= input().split(".")
print("%s" %a[-1])
发表于 2021-10-26 15:26:38 回复(0)
import java.util.Scanner;

public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        Float a = sc.nextFloat();
        String[] b = String.valueOf(a).split("\\.");
        String c = b[0].substring(b[0].length()-1);
        System.out.print(c);
    }
}

发表于 2020-09-19 11:10:13 回复(0)
#include <stdio.h>

int main() 
{
    float n = 0.0f; //如果是0为整型,0.0为double型,0.0f是浮点型
    //不过一般初始化写成0就好了
    scanf("%f",&n);
    if(n >= 0 && n <= 200)
    {
        //int a = n;  //决断c,把n强制转换为整型
        //int b =a % 10;
        //int a =n %10; //这个是错误的操作符%必须是两个整数才行
        int a =(int)n %10;
        printf("%d",a);
    }
    return 0;
}

编辑于 2024-03-23 18:40:27 回复(1)
#include <stdio.h>

int main() {
    double n;
    int num,n1;
    scanf("%lf",&n);
    n1=(int)n;//强制类型转换
    num=n1%10;//取余出个位数数字
    printf("%d",num);
    return 0;
}

编辑于 2024-02-07 15:59:21 回复(0)
#include <stdio.h>

int main() {
    float a;
    int b;

scanf("%f",&a);
b=(int)a;
printf("%d",b%10);

    return 0;
}
发表于 2023-11-25 19:00:17 回复(0)
#include <stdio.h>

int main()
{
    float a = 0;
    scanf("%f",&a);
    int b = (int)a % 10;
    printf("%d\n",b);
    return 0;
}

发表于 2023-11-02 21:46:09 回复(0)
在C语言中,对于浮点数类型的操作数,取模(%)运算符是无法直接使用的。取模运算符只能用于整数类型的操作数。
浮点数转换为整数时会丢失小数部分的信息。
库函数 modf(a, &intpart)将浮点数分为整数部分和小数部分,并将整数部分存储在intPart变量中,返回小数部分作为结果。
#include <stdio.h>

int main() {
    float a;
    scanf("%f", &a);
    int temp = (int)a;
    int b = temp % 100 % 10;
    printf("%d"b);
    return 0;
}
发表于 2023-07-10 13:19:13 回复(0)
a,b=input().split('.')
print(a[-1])

发表于 2023-07-03 16:30:20 回复(0)
#include <stdio.h>
int main(){
    float a = 0;
    int b = 0;
    int c = 0;
    scanf("%f", &a);
  	b = (a*10)/10;
  	c = b%10;	
  	printf("%d",c);
    return 0;
}


发表于 2023-06-15 23:04:03 回复(0)