使用POW计算不同数字类型的范围

时间:2015-02-18 00:34:09

标签: c

我是新来的,就像我是编程新手一样。我已经阅读了几个线程,但我无法弄清楚每个线程的部分。 我有功课来计算每个数字类型占用的字节数和位数,我是这样做的:

#include <stdio.h>

int main()
{
    printf("Broj bajtova za podatak tipa CHAR je %d, a broj bitova %d \n\n", sizeof(char), sizeof(char)*8);
    printf("Broj bajtova za podatak tipa SHORT je %d, a broj bitova %d \n\n", sizeof(short), sizeof(short)*8);
    printf("Broj bajtova za podatak tipa INT je %d, a broj bitova %d \n\n", sizeof(int), sizeof(int)*8);
    printf("Broj bajtova za podatak tipa LONG je %d, a broj bitova %d \n\n", sizeof(long), sizeof(long)*8);
    printf("Broj bajtova za podatak tipa FLOAT je %d, a broj bitova %d \n\n", sizeof(float), sizeof(float)*8);
    printf("Broj bajtova za podatak tipa DOUBLE je %d, a broj bitova %d \n\n", sizeof(double), sizeof(double)*8);
        return 0;
        system("PAUSE");
}

但今天我有功课用POW计算不同数字类型的范围。我真的不知道这个概念,所以我需要你的帮助。请记住,我是新学习C ...

1 个答案:

答案 0 :(得分:0)

我是这样做的:

#include <stdio.h>
#include <math.h>

    int main()
{
    printf("Opseg brojeva za podatak tipa CHAR je od %d do %d \n\n", (int)pow(-2,7), (int)pow(2,7) -1);
    printf("Opseg brojeva za podatak tipa SHORT je od %d do %d \n\n", (int)pow(-2,15), (int)pow(2,15) -1);
    printf("Opseg brojeva za podatak tipa INT je od %d do %d \n\n", (int)pow(-2,31), (int)pow(2,31));
    printf("Opseg brojeva za podatak tipa LONG je od %d do %d \n\n", (int)pow(-2,31), (int)pow(2,31));
    printf("Opseg brojeva za podatak tipa FLOAT je od 3.4x10^-38 do 3.4x10^38 \n\n");
    printf("Opseg brojeva za podatak tipa DOUBLE je od 1.7x10^-308 do 1.7x10^308 \n\n");
    return 0;
}

我唯一不能做的就是使用pow代表FLOAT和LONG。 谢谢你们!