C语言笔记(建议背下来)

关键字

数据类型关键字(12个):

char、short、int、long、signed、unsigned、float、double、struct、union、enum、void

控制语句关键字(12个):

1、循环控制(5个)

for、do、while、break、continue

2、条件语句(3个)

if、else、goto

3、开关语句(3个)

switch、case、default

4、返回语句(1个)

return

存储类型关键字(5个)

auto、extern、register、static、typedef

其他关键字(3个)

const、sizeof、volatil

特殊笔记

若二维数组a有m列,则计算任一元素a[i][j]在数组中位置的公式为 i*m+j+1。

e(或E)前面必须有数,后面必须要有整数。

在数字后面加l或L,表示长整型;后面加u或U,表示无符号类型。

一个整常量后面加一个字母u或U,可以认为是unsigned int型,如123456u
在一个整常量后面加一个字母l或L,则认为是long int型常量,如123l、123L

实现保留三位小数,第四位四舍五入的程序。

y=(int)(x*100+0.5)/100.0   这个保留两位,对第三位四舍五入
y=(int)(x*1000+0.5)/1000.0 这个保留三位,对第四位四舍五入
y=(int)(x*10000+0.5)/10000.0 这个保留四位,对第五位四舍五入

运算符的优先级:赋值运算符 < 逻辑运算符 < 关系运算符 < 算术运算符。

字符数组初始化被赋值了,当使用scanf函数或gets函数对数值赋值时,会将里面初始化的值覆盖。

三种零的表示(整型:int n = 0; 字符串:char arr = '\0'; 指针:int *p = NULL;

char型数据在内存中的存储形式是ASCII码。

如果是定义的全局变量或者静态变量,未初始化的话就是0。如果是局部变量,那就是以前残留在堆栈里的随机值。

两个指针变量不可以相加,指针只可以进行相减。

if语句中的表达式不局限于哪种类型的表达式,只要表达式非零时,表达式的值就为真,否则就是假。

在c语言中,局部变量可以和全局变量可以同名。

用户自定义标识符:define、scanf等可以被用来定义标识符。不能使用关键字,只能包含字母、数字(不能开头)、下划线。

C程序在预处理阶段对预处理命令进行处理。

数组的定义形式:类型说明符 数组名[常量表达式] (如是二维数组,后面再加一个[常量表达式] )。

C语言只有9种控制语句。

if...else、for、while、do...while、continue、break、switch、return、goto

空语句:(就一个单独的分号)。

调用一个函数,且此函数中没有return语句,则返回一个不确定的值。

C 语言编写的源文件经过编译,若没有产生编译错误,系统将输出运行结果。

系统默认的C 语言源程序文件的扩展名是 .c ,经过编译后生成的目标文件的扩展名是 .obj ,经过连接后生成的可执行文件的扩展名是 .exe

强制类型转换是获得目标类型的值,不能更改变量储存单元的大小。

在if和else之间如果有多条语句,必须使用复合语句(if和else之间不能隔一条语句),就是加{ },否则就会报错。

if (a > b)
    a = b; 
    b = a;   
else 
    a++; 
    b++;       (报错!!!)

在C语言中的if语句中,用作判断的表达式可以是任意表达式。

C语言中函数返回值的类型由定义函数时所指定的函数类型决定。

&&:左边为假,右边不再执行; ||:左边为真,右边不再执行。

在C语言中,一个汉字字符占2个长度、2个字节。

char s[ ]="语";
strlen(s); //2 
siezof(s); //3

符号常量是指用#define指令,指定用一个符号代表一个常量。用define定义的符号常量,可以用define进行修改。

只有整型(包括字符型)数据可以加signed或unsigned修饰符,实型数据(double和float)不能加。

ASCII码值的标准范围是:000--127;扩展范围是:128--255。

库函数可以用来当预定义的标识符,但是库函数会失去它原来的含义。

二进制(0b)、八进制(0)、十六进制(0x或0X)开头。

C语言的标识符可分为关键字、预定义标识符和用户标识符三类。

将一个两位数n的个位与十位调换:(n - n / 10 * 10) * 10 + n / 10;

在 C 程序中无论是整数还是实数,只要在允许的范围内都能准确无误的表示。

算法:可以没有输入,但是一定要有输出。

C语言只有八、十、十六进制,没有二进制。但是运行时候,所有的进制都要转换成二进制来进行处理。

关于printf的输出格式。

printf("%5d\n", 1124); //最少输出5个数,不够左侧用空格补齐  
printf("%.5d\n", 1124); //最少输出5个数,不够左侧用0补齐
printf("%-5d\n", 1124); //最少输出5个数,不够右侧用空格补齐
printf("%-.5d\n", 1124); //最少输出5个数,不够左侧用0补齐
printf("%5s\n", "abcd"); //最少输出5个字符,不够左侧用空格补齐
printf("%.5s\n", "abcdefg"); //最多输出5个字符,多余的不在输出

优质内容推荐,建议每天学习:[字符串函数讲解]   [C语言三子棋游戏]  [操作符详细讲解]

目录

  • 19
    点赞
  • 186
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我会一直在的

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值