您的位置:首页 > 编程语言 > C语言/C++

c语言第一天

2013-11-10 11:04 369 查看
很久都没有用过c了,今天重新复习了一下c语言,做了一个小小的笔记,以便以后的复习

一.c语言hello world:

#include<stdio.h>

int main()
{
printf("hello world!\n");
return 0;
}

运行该程序会在屏幕上打印出“hello world”。 程序第一行为“预处理”命令,必须在第一行。如果编辑器一行写不了 可以通过“\”来换行,如:

#include \
<stdio.h>


stdio.h为c标准库,也可以自己写文件来加入,如写一个文件为“xxxx”文件,可以不用扩展名,如下:

printf("this is firstfile!\n");
printf("this is other file!\n");


可以把它加入到程序中,如果是引用系统的则用“<>”,如果是引用自己写的文件则用“""”来引用如下:

#include<stdio.h>
int main()
{
printf("hello world!!\n");
#include "xxxx"    \\引用自己的文件用"" 双引号
return 0;
}


打印结果为:

hello world
this is firstfile
this is other file


二 类型

在c语言中,类型可以分为

int(整形) 如 数字 5

char(字符型)如 'a'

string(字符串)如 "china"

float(单精度型),double(双精度型) 都表示小数,只是精度有不一样,float精确到7位有效数字,而double精确到 15个有效数字

long double(不是标准c)可能有些编译器不支持

计算机中,所有的类型最终都用二进制表示,如数字 5 表示为二进制为 0000 0101,数字1的部分表示“权重”,如果是有1的部分,就表示2的多少次方,如:

0000 0101 表示为:从最右边开始,表示2的0次方,为1,第二位没有 第三位为2的2次方,为4,1+4=5;

以上都是非负数的表示方法,如果要表示负数呢,计算机中用最高位表示符号位,如果为0就是正数,为1表示为负数。计算机中用unsigned 表示无符号的意思是最高位不表示符号位,永远都为正数,而有符号的表示如下图:



如 1000 0001 表示为-1;0000 0001表示为 1,这样表示还会有一个缺点,就是在进行运算的时候会出现问题,如-1的二进制为 1000 0001 要加上1(0000 0001),则加上的结果为

1000 0001

0000 0001

1000 0010

结果为-3,计算结果与实际生活中的不同,所以在后期计算机中引入了补码来表示负数,

对于非负数而言补码和原码相同

对于负数是正数原码按位取反再加一

如-1的原码表示方法为:1000 0001 ,则对于的补码为:

正数的原码:0000 0001

按位取反: 1111 1110

然后加1: 1111 1111

所以最后-1的补码为 1111 1111

现在我们来进行相关计算,如果用-1来加上1,最后结果应该为0,如下:

1111 1111

0000 0001

0000 0000

预算中最右边的1+1 为0,会不停进位,到最后一位时舍弃(溢出),所以最终结果为0,计算的最终结果和我们想象的结果一样。计算一下10110100 是负几表示为负几,如下:

1011 0100

取反 0100 1011

加1 0100 1100

表示为十进制为:-84

计算机中通常用字节(byte)为单位,一个字节为8位。

char字符用ASCII码表示字符来表示。常用的字符ASCII表为:

'a'-'z' 97-122

'A'-'Z' 65-90

'0'-'9' 48-57

'\' ----13 '\n'----10 '\t'----9

'\0'----0 ' '----32

而float和double则表示为:



上图表示为float,double的表示与次类似,只是阶码为11位,而尾数为52位

三,c语言打印

c语言中使用打印语句的时候必须用上“#include<stdio.h>”预处理命令。如果想打印整型,则需要用到占位符,如:

printf("AAAd%BBBf%CCC",222,22.2);

打印结果为:AAA222BBB22.20000上面的“d%”,和"f%"就叫做占位符,它会被后面的具体内容所替代。每个类型会有不同的占位符,如下:



今天就到这里。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: