C/C++教程

C/C++基础学习:数据类型

本文主要是介绍C/C++基础学习:数据类型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

转自:微点阅读 http://www.weidianyuedu.com/

基本数据类型
整型:short ,int , long , long long

我们比较常用的是int 和 long long ,为什么会常用long long ,因为它能表示更大的数据范围。

int 是占4个字节,1个字节8位,所以int的范围是(-2^31 ~ 2^31-1)

long long 占8个字节 取值范围 (-2^63 ~ 2^63-1)

#include<cstdio>
#include<cstdlib>
#include<iostream>
using namespace std;

int main()
{
    int n;
    printf("int 表示的最大值%d\n",INT_MAX) ;//2147483647
    printf("long long表示的最大值%lld\n",LONG_LONG_MAX);//9223372036854775807

    /*int m =63;
    long long a = 1;
    while(m--) 
    {
        a*=2;
    }
    printf("%lld\n",a-1);//**** long long的最大值 */
    return 0;
}
long long 表示的 int大得多得多。

浮点型 float ,double

通俗的讲就是能表示小数部分,float 占用4个字节,double 占用8个字节,所以double能比float表示更大的范围

小数点的处理

比如保留三位小数,并四舍五入

%.3lf 就是保留三位小数

 double a = 13.58465;
    // 直接输出
    printf("%.3lf",a);//会自动进行四舍五入
    // 如果自己计算 四舍五入 
    a = (int)(a*1000 + 0.5)/1000.0;//.0是能讲int再次转为浮点型
    printf("%lf",a);
奥赛一道题

计算分数的浮点数值


#include<stdio.h>

int main()
{
    int a,b;
    scanf("%d%d",&a,&b);
    double c = a*1.0/b;//注意要*1.0 假如5/7 因为int类型会抹去小数部分就会输出0
    //double c = a / b; 
    printf("%.9lf",c);
    return 0;
}
 

布尔类型

C语言中没有布尔类型,但是C++中有。

C++中bool类型的值只有两个,true 和 false 代表真和假

在C语言中想要表示真假可以用非0和0表示,通常用1和0

也可以定义成true 和 false

// c 
#include<stdio.h>
#define true 1
#define false 0
int main()
{
    if(true) printf("1");
    else printf("0");
    return 0;
/*
结果输出1
*/
}
#define 就是宏定义 上面就是将true定义为1,false定义0

字符型

char ,可以读入的类型为字符类型

补充一下字符A的ascll码为65 ,a的ascll码为97,字符0的ascll码为48

printf("%d\n",'A');//65
printf("%d",'a');//97
printf("%d",'0');//48
所以推广出来,大小写字母转换差了32,0-9 字符想要转为整数只需减去48或者'0'.
————————————————
来源:微点阅读 - 范文大全 - 免费学习网站! - m.weidianyuedu.com

这篇关于C/C++基础学习:数据类型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!