Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,872 questions

51,796 answers

573 users

How to get the first two digits after the decimal point of a float number in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>

void get_first_two_digits_after_decimal_point(double d, char result[]) {
    char s[20];
    snprintf(s, sizeof(s), "%.6f", d);
    
    char *point_pos = strchr(s, '.');
    
    if (point_pos != NULL) {
        int index = point_pos - s + 1;
        strncpy(result, s + index, 2);
        result[2] = '\0';
    }
}

int main() {
    double d = 1376.287152;
    char result[3];
    
    get_first_two_digits_after_decimal_point(d, result);
    
    printf("%s\n", result);
    
    return 0;
}

    
    
/*
run:
    
28
    
*/
   

 



answered Sep 18, 2024 by avibootz
...