注释
/*
多行注释
*/
// 单行注释
声明变量
// 变量类型 自定义变量name
int intNumber
char charString
short shortNumber
long longNumber
double doubleNumber
基础数据类型
// int 与 float 类型的取值范围取决于具体的机器
int // 整型
float // 浮点型
char // 字符(一个字节)
short // 短整型
long // 长整型
double // 双精度浮点型
转义符
%d 按照十进制整型数打印
%6d 按照十进制整型数打印,至少 6 个字符宽
%f 按照浮点数打印
%6f 按照浮点数打印,至少 6 个字符宽
%.2f 按照浮点数打印,小数点后有两位小数
%6.2f 按照浮点数打印,至少 6 个字符宽,小数点后有两位小数
此外,printf 函数还支持下列格式说明:%o 表示八进制数;%x 表示十六进制数;%c 表示字符;%s 表示字符串;%%表示百分号(%)本身。
循环语句
// while 循环
// while (循环条件 为true则进行循环){ 执行内容 } // while (循环条件 为true则进行循环) 执行内容
// Demo:
int test = 3;
while (test>0){i--;}
// for (变量声明;循环条件;变量操作){ 执行内容 } // for (变量声明;循环条件;变量操作) 执行内容
// Demo:
for (i:=0;i<3;i++){;}
符号常量
#define 指 令可以把符号名(或称为符号常量)定义为一个特定的字符串:
// #define 名字 替换文本
// Demo:
#include <stdio.h>
#define LOWER 0 /* lower limit of table */
#define UPPER 300 /* upper limit */
#define STEP 20 /* step size */
/* print Fahrenheit-Celsius table */
main() {
int fahr;
for (fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP)
printf("%3d %6.1f\n", fahr, (5.0 / 9.0) * (fahr - 32));
}
内建获取输入以及打印输出
#include <stdio.h>
/* copy input to output; 2nd version */ main() {
int c;
while ((c = getchar()) != EOF) putchar(c); // getchar()获取标准输入 putchar(c)得到输入结果
}
数组
// 数组声明
int sliceint[num] // 声明int类型的数组 num代表数组的长度 数组的下标从0开始
// PS:特别注意 C中声明数组一定要进行数据初始化 否则可能新数组的某个位置已经有值了
补充
变量 - '0' // 判断变量byte是否为有效数字(0-9直接,如果大于9 则拆分 例如 10->1,0),将其转化为数字
函数
// 函数定义的一般形式为:
返回值类型 函数名(0 个或多个参数声明){声明部分;语句顺序;return 表达式;} //
Demo:
#include <stdio.h>
int power(int m, int n);
/* test power function */
int main() {
int i;
for (i = 0; i < 10; ++i)
printf("%d %d %d\n", i, power(2, i), power(-3, i));
return 0;
}
/* power: raise base to n-th power; n >= 0 */
int power(int base, int n) {
int i, p;
p = 1;
for (i = 1; i <= n; ++i)
p = p * base;
return p;
}
字符数组
通常我们在字符数组最后一位喜欢写上 '\0'来标记末尾
外部变量与作用域
外部变量必须定义在所有函数之外,且只能定义一次,定义后编译程序将为它分配存储 单元。在每个需要访问外部变量的函数中,必须声明相应的外部变量,此时说明其类型。声 明时可以用 extern
语句显式声明,也可以通过上下文隐式声明
谨记:声明可以多次,定义只能一次。
extern int i; //声明,不是定义
int i; //声明,也是定义
Demo
void x() {
extern int text[10]; // 这里声明 后面定义的变量
for (int i = 0; i < 10; ++i) {
printf("%d:i:%d\n", text[i], i);
}
}
int text[10]; // 这里声明定义
int main() {
for (int i = 0; i < 10; ++i) {
printf("%d:i:%d\n", text[i], i);
}
x();
}