鱼C论坛

 找回密码
 立即注册
查看: 3343|回复: 5

[见证历程] C语言学习中的记录

[复制链接]
发表于 2012-12-25 09:00:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 づ綄镁の爱ヽ 于 2012-12-25 11:16 编辑

#include <stdio.h>
#include <math.h>
//#define PEICE 30//定义一个常量 PEICE为30 以后在调试中,所有的PEICE都是30 ,定义常量用#define 常量名 常量大小  常量名用英文大写表示,常量不可以在以下的代码中更改或再赋值
void main ()
{

//        printf("%d\n", sizeof(int));//显示整型变量在系统中所占的字节,括号内的int可以变更为其他变量类型:如short短整形、long 长整形、 float浮点型 等等


//有符号整型变量和无符号整型变量的运算,系统会自动变成有符号整型变量
/*        int a, b, c, d;
        unsigned u;
        a = 12;
        b = -24;
        u = 10;
        c = a + u;
        d = b + u;
        printf("c=%d\nd=%d\n",c, d);*/

//整型数据的溢出
/*        short int a, b;//短整型所占2个字节,每个字节占8位,2个就是18位 2的16次方是65536 因为整型变量是有符号的,除以2之后得数为32768个数,最大存储为32767(包含0-32767)
        a = 32767;      //所以 当32767+1之后 ,就超出了短整型的存储范围,称之为溢出。如果题想要改为整型变量的话,需要把a的值赋值为2的32次方除以2再减1,因为整型变量是4个字节。
        b = a + 1;
        printf("%d\n%d\n", a, b);*/


//不同类型变量的运算
/*        long x,y;
        int a, b, c, d;
        x = 5;
        y = 6;
        a = 7;
        b = 8;
        c = x + a;
        d = y + b;
        printf("c=%d\nd=%d\n", c, d);*/


//有效数字的舍入误差
/*        float a, b;   // 123456.789e5实际为双精度型(double float),将双精度存放入单数度,会出现舍入误差。
        a = 123456.789e5;
        b = a + 20;
        printf("%f\n", a);
        printf("%f\n", b);*/


//转义字符的使用
/*        int a, b, c;//转义字符都是用反斜扛来表示(\),后面跟规定的字符,例如:\n就是回车换行的意思,\t就是横向跳到下一制表位置,相当于按下键盘上tab键,具体其他转义字符含义,请去电脑里面找
        a = 5;
        b = 6;
        c = 7;
        printf(" ab c\tde\rf\n");
        printf("hijk\tL\bM\n");*/
//字符型变量
/*    char a; //字符型变量用字义用char表示,赋值时要给赋值的值加‘’,表示为字符型。
        a = '7';//字符型变量要用到asc码表,去电脑里面查找.
        printf("%d\n",a);*///简单的例子,定义a为字符型,把‘7’赋值给字符a,然后输入a ,对照asc码表得知,7在用asc码表示是55,所以运行结果输入为55



//向字符变更赋值整数
/*        char a, b;
        a = 120;
        b = 121;
        printf("%c\n%c\n", a, b);//当输出为字符型时,程序对应asc码,为120=x 121=y
        printf("%d\n%d\n", a, b);//当输出为整型时,程序自动默认输出为120,121*/



//把小写字母转换为大写字母
/*        char a, b;//大写字母与小写字母在asc表中相关32 ,大写字母小于小写字母,所以用小写字母减去32后,就会得到对应的大写字母
        a = 'a';
        b = 'b';
        printf("%c\n%c\n", a-32, b-32);*/
//输入一小写字母,将其转换为大写字母输出。
/*        char a;
        scanf("%c", &a);
        printf("%c\n", a-32);*/

/*****************************************************************************************************************************************************************************************/
/*不同类型数据之间的混合运算规则(自动类型转换):
1.若参与运算量的类型不同时,刚先转换成同一类型,然后再进行运算。
2.转换按数据长度增加的方式进行,以保证精度不降低。如int型和long型运算时,先把int转换成long型后,再运算。
3.所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算表达式,也要转换在double型,再运算。
4.char型和short型参与运算时,必须先转换为int型再运算。
5.在赋值运算中,赋值号(=)两边的数据类型不同时,赋值号右边的类型将转换为赋值号左边的类型。如果右边的数据类型长度长于左边时,将丢失一部分数据,这样会降低精度,丢失的部分按四舍五入向前舍入
/*****************************************************************************************************************************************************************************************/


//例题:不同类型数据的运算(自动类型转换)
/*        float pi = 3.14159;
        int s, r = 5;
        s = r * r * pi;//pi为浮点型,但是因为运算规则,程序自动将其转换为double型,double型为8字节64位;s为int型,inte型为4字节32位,在运算时按运算规则,自动将double型和int转换为最长的double型,
                       //但是,因为有赋值号的存在,所以其结果扔为int型,自动舍去了小数据部分,只留整数部分数据。
        printf("s=%d\n", s);*/
这只是很少的一部分 还有很多不拿来现了

我只是想说学习方法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-1-1 16:25:04 | 显示全部楼层
楼主真心不错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-1-13 04:52:35 | 显示全部楼层
代码应该精简了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2013-1-13 07:57:02 | 显示全部楼层
发表回复 回帖后跳转到最后一页 {:1_1:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2015-12-12 10:48:18 | 显示全部楼层
void main() 改成 int main(void) 吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-12-16 08:22:02 | 显示全部楼层

支持楼主
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 03:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表