一.头文件和源文件
C语言中:xxx.c表示源文件
xxx.h表示头文件
C语言代码在源文件中完成
二.main函数
main函数是整个程序执行的入口
main函数有且只有一个
#include<stdio.h>
int main()
//int 代表main函数返回的是一个整型的数值
//括号内表示main不含任何参数
{
printf("hehe");
return 0;
}
三.printf函数和库函数
在C语言中,printf函数用于在屏幕上打印出双引号内的字符串(输出)
#include<stdio.h>
stdio.h这个头文件中包含了C语言一些基础的函数,例如printf、scanf等等
#include<stdio.h>
int main()
{
printf("%d",100);//%d为占位符,表示在该位置以十进制整数输出一个数字
printf("%c",'a');//%c表示输出字符(单引号)
printf("%f",3.14);//%f输出小数点后六位
return 0;
}
四.关键字(保留字)
关键字在C语言中有特殊的含义,不能用做标识符名称
五.字符和ASCII编码
字符在计算机内部是以二进制的形式存储的,即将字符用对应的ASCII编码代替存储到计算机中
每一个字符都有一个ASCII编码与之对应
大写字母与其对应的小写字母的ASCII编码差值为32
大写A:65 小写a:97
显示对应ASCII编码所对应的字符的程序
#include<stdio.h>
int main()
{
int i;
for(i=0;i>32&&i<127;i++)
printf("%c ",i);
return 0;
}
六.字符和字符串
字符串的结尾都有一个结束的转义字符\0,在打印字符串时,遇到\0就会停止打印
在利用strlen函数计算字符串的长度时,计算\0之前的字符
#include<stdio.h>
int main()
{
char arr1[] = "abc";
char arr2[] = { 'a','b','c' };
printf("%s\n", arr1);
printf("%s", arr2);
return 0;
}
arr1中的字符串由于有结束标志因此打印完abc后自行停止
arr2中的字符没有\0会导致打印不确定字符直到打印到\0
#include<stdio.h>
int main()
{
char arr1[]={'a','b','c','\0'};
char arr2[]="abc\0def";
printf("%s\n",arr1);
printf("%s",arr2);
return 0;
}
arr1中添加了\0字符,因此不会打印出不确定的字符
arr2中由于abc后便是结束字符,因此在打印完abc后就不会继续打印def
七 转义字符
改变了原来意思的字符
\n:换行
\\ \? \" \' :分别用于表示字符 \ ? " ' 防止识别错误
\t 水平制表符,类似几个空格
\b 退格符,光标回退一位,但不是删除
#include<stdio.h>
int main()
{
printf("abc\tdef\n");
printf("abc\bdef\n");//光标在c处回退一位后再打印def就会把c覆盖,类似删除
printf("%c,%c,%c,%c",'\\','\?','\"','\'');
return 0;
}
\ddd :ddd为一到三个八进制数字
\xdd :dd为十六进制数字
这两个转义字符的含义为:某个字符的十六进制或八进制的表现形式(对照ASCII码表)
#include<stdio.h>
int main()
{
printf("%c\n",'\120');
printf("%c",'\x21');
return 0;
}
\120 :八进制120对应十进制的80,通过ASCII码表可得80对应的字符为P
\x21 :同理可得,十六进制的21对应的字符是!
\0是\ddd的一种,表示结束
八 语句
C语言由一条一条的语句构成
1.空语句
仅是一个分号,用在需要一个语句但该语句什么作用也没有的地方
2.表达式语句
在一个表达式后加分号便构成了一条表达式语句
3.函数调用语句
在调用一个函数时用到的语句
#include<stdio.h>
int main()
{
a+b=c;//这便是一条表达式语句
printf("66");//函数调用语句
return 0;
}
4.复合语句
成对的大括号中的语句(代码块)
5.控制语句