C程序由函数 (Function,一种子程序)所组成。
main前面的int表示main函数调用返回一个整形值。
#include<stdio.h> //包含一个stdio.h的文件
int main(void) //主函数-程序的入口-main函数有且只有一个
//void表示main()函数不需要参数
{
int a,b,c; //C中,所有语句都以分号结束,且程序中所有标点符号都为英文字符
printf("%d%c%f",a,b,c); //意思是a以整型输出,b以字符型输出,c以实型输出
return 0; //表示结束main()函数运行,并向系统返回一个整数0,作为程序的结束状态
}
计算机中的单位
最小 bit-比特位
1.bite-字节 1字节=8bit
2.kb、mb、gb、tb、pb(单位间1024转换)
变量的作用域与生命周期
全局变量:定义在代码块{}之外的变量
局部变量:定义在代码块{}之内的变量
名字相同的全局变量和局部变量可以同时存在,优先显示局部变量,但是局部变量和全局变量不建议取相同名字(局部变量只能用于所在的代码块{}内)
1.局部变量的作用域是变量所在的局部范围。
2.全局变量的作用域是整个工程。
格式化输出函数printf()
数据类型 | 格式控制字符 | 字节大小 | 说明 |
---|---|---|---|
整型 (int) | %d | 4 | 输出十进制整型数据的实际长度输出 |
短整型 (short) | %hd | 2 | |
长整型 (long) | %ld | 4/8 | |
更长的整型 (longlong) | %lld | 8 | |
字符型 (char) | %c | 1 | 只输出一个字符 |
单精度浮点型 (float) | %f | 4 | |
双精度浮点型 (double) | %f | 8 |
进制转换
1.十进制: 都是以0-9这九个数字组成,不能以0开头。
2.二进制: 由0和1两个数字组成。
3.八进制: 由0-7数字组成,为了区分与其他进制的数字区别,开头都是以0开始。
4.十六进制:由0-9和A-F组成。为了区分与其他数字的区别,开头都是以0x开始。
- 二进制转十进制 方法:按权展开法
例如:1011=1×2^3+0×2^2+1×2^1+1×2^0=1×8+0×4+1×2+1×1=8+2+1=11
ps:八进制、十六进制转换为十进制原理同上
- 十进制转二进制 方法:除二取余法
例如:
ps: 十进制转八进制、十六进制原理同上
字符串
由双引号引起来的一串字符称为字符串字面值,简称字符串。
ps:字符串的结束标志是一个\0的转义字符,不算作字符串内容
#include<stdio.h>
int main()
{
char arr1[] ="abc"; //将字符串abc放入数组内
//引号内自带隐藏的\0结束字符,打印结束
char arr2[] = { 'a','b','c'}; //将三个字符放入数组内
//char arr2[] = { 'a','b','c','\0'};
printf("%s\n", arr1); //打印结果为abc
printf("%s\n", arr2); //打印结果可能为abcxxxxbc,可能出现乱码问题,总之结果不对
//正确输入应为注释部分
return 0;
}
ps:打印字符串%s
计算字符串长度
#include<stdio.h>
#include<string.h>
int main()
{
char arr1[] ="abc";
char arr2[] = { 'a','b','c','\0'};
printf("%d\n", strlen("c:\test\32\test.c")); //strlen--string length
//输出结果为13
printf("%d\n", strlen(arr2)); //输出结果为3
return 0;
}
以上代码中,\与数字或字母组成转义字符
转义字符
ps:转义字符记作一个长度
ASCII表