码迷,mamicode.com
首页 > 编程语言 > 详细

c语言学习的第四天2

时间:2016-06-19 20:01:15      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:

 技术分享

 

上图显示了floatdouble的精度,精度:就是指数值的精确程度,浮点类型可表示的数值范围很大,但只有几位是精确的,可以通过小

数所占的位数来获取,float小数部分最多能有7位有效数字,但绝对能保证的是6位,double小数部分为16位有效数字,但绝对能保证的

15

#include<stdio.h>

int main()

{

    double x=3.0123456789111118;

    printf("%f\n",x);

    return 0;

}

默认%f只输出小数点后六位,要指定输出多少位需要使用下面的格式

printf("%.16f\n",x);

 

#include<stdio.h>

int main()

{

    double x=3.0123456789111118;

    printf("%A\n",x);

    return 0;

}

%A会将x的值转换为十六进制浮点数,%e是指数形式,%f是十进制形式,编译器默认将浮点数看为double类型

 技术分享

技术分享

技术分享

 

#include<stdio.h>

int main()

{

    char ch;

    ch=97;

    printf("ch:%c\n",ch);

    return 0;

}

 

char ch,系统会为该变量分配一个字节的空间,并在该内存空间上贴上一个标签ch%c代表字符类型

#include<stdio.h>

int main()

{

    char ch;

    ch=‘a‘;

    printf("ch:%c\n",ch);

    printf("ch:%d\n",(int)ch);

    return 0;

}

printf("ch:%d\n",(int)ch);的作用是输出变量ch对应的ASSIIC码值,(int)中的()是强制类型转换运算符,()中的int代表要转换成的类型

字符型变量只能保存一个字符,‘’包含的是一个字符,“”包含的是一串字符,因此上面的ch=’a’;不能写成ch=”a”;

#include<stdio.h>

int main()

{

    int i;

    for (i=32;i<127;i++)

    {

        printf("%c\n",(char)i);

    }

    return 0;

}

上面的程序是将32~126 ASCII码对应的字符依次输出

#include<stdio.h>

int main()

{

    char ch1=0;

    char ch2=‘0‘;

    printf("%d\n%d\n",(int)ch1,(int)ch2);

    return 0;

}

运行上面的程序可以得到数字0对应的ASIIC码为0,而字符0对应的ASIIC码为48

#include<stdio.h>

int main()

{

    float f=3.1415f;

    int a=f;

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

    printf("%f\n",f);

    return 0;

}

int a=f; f的值复制一份,将复制的值赋值给a,因此f本身的值不会改变,格式符%f默认输出6位小数

在表达式中有符号或无符号的charshort都会自动转换成int,下面是举例说明:

#include<stdio.h>

int main()

{

    char c1=12,c2=108;

    printf("%d\n",c1+c2);

    return 0;

}

会先将c1c2的类型转换int类型,然后再相加,由于c1c2是被转换成表示范围更大的类型,此种转换又叫提升,在函数中也会出现提

升,当作为参数传递给函数时charshort类型会提升为int类型,float类型则会提升为double类型,举例如下:

#include<stdio.h>

int main()

{

    char ch=‘a‘;

    printf("ch保存的ASCII码值:%d\n",ch);

    return 0;

}

ch会自动转换成int类型,因此不用强制转换

 

 

 

c语言学习的第四天2

标签:

原文地址:http://www.cnblogs.com/linuxboke/p/5598599.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!