Author: jiuhao47
int a = 10;
包括 int
,short
,long
,long long
,以及它们的无符号版本 unsigned int
,unsigned short
,unsigned long
,unsigned long long
。
int var_int;
short var_short;
long var_long;
long long var_long_long;
unsigned int var_unsigned_int;
unsigned short var_unsigned_short;
unsigned long var_unsigned_long;
unsigned long long var_unsigned_long_long;
float b = 3.14;
包括 float
,double
,long double
。
float var_float;
double var_double;
long double var_long_double;
char c = 'A';
char
,以及它的无符号版本 unsigned char
。
char var_char;
unsigned char var_unsigned_char;
bool
(需要包含头文件 stdbool.h
)。
#include <stdbool.h>
bool var_bool;
void
,主要用在函数返回值和参数中,表示无值或任意类型。
void func1();
enum
,用于定义在程序中只能取一定范围内的值的类型。
enum color { red, green, blue };
enum color var_color;
a = b + c;
a = a + 1;
int a,b,c;
a=b=c=1;
1;
a;
a+b;
a+=c;
a++;
a,b,c;
;
a+=a,b,c++;
// 单行注释
/*
多行注释
*/
printf("Hello, World!\n");
int a = 10;
printf("a = %d\n", a);
float b = 3.14;
printf("b = %f\n", b);
char c = 'A';
printf("c = %c\n", c);
int a;
scanf("%d", &a);
float b;
scanf("%f", &b);
char c;
scanf("%c", &c);
char c = getchar();
putchar('A');
char c = getchar();
putchar(c);
#include <stdio.h>
int main()
{
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
printf("%d + %d = %d\n", a, b, a + b);
return 0;
}
if (condition) {
// code
}
if (condition) {
// code
} else {
// code
}
if (condition1) {
// code
} else if (condition2) {
// code
} else {
// code
}
if (condition1) {
if (condition2) {
// code
} else {
// code
}
} else {
// code
}
if (condition1) {
// code
}
else if(condition2) {
// code
}
[控制流图](https://zh.wikipedia.org/wiki/%E6%8E%A7%E5%88%B6%E6%B5%81%E5%9C%96)
#include <stdio.h>
int main()
{
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
char op;
printf("请输入运算符:");
scanf("%c", &op);
if (op == '+') {
printf("%d + %d = %d\n", a, b, a + b);
} else if (op == '-') {
printf("%d - %d = %d\n", a, b, a - b);
} else if (op == '*') {
printf("%d * %d = %d\n", a, b, a * b);
} else {
printf("不支持的运算符\n");
}
return 0;
}
while (condition) {
// code
}
do {
// code
} while (condition);
int i = 0;
while (i > 0) {
printf("%d\n", i);
i++;
}
// 不会输出任何内容
int j = 0;
do {
printf("%d\n", j);
j++;
} while (j > 0);
// 会循环输出0, 1, 2, ...
// do-while 会先执行一次循环体,再判断循环条件
// while 先判断循环条件,再执行循环体
for (init; condition; increment) {
// code
}
// init: 循环变量初始化,只在循环开始时执行一次,e.g. int i = 0;
// condition: 循环条件,每次循环开始前判断,为真则执行循环体,为假则跳出循环,e.g. i < 10;
// increment: 循环变量增量,每次循环结束后执行,e.g. i++;
// 示例
for (int i = 0; i < 10; i++) {
// code
}
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10; j++) {
// code
}
}
for (;;) {
// code
}
while (1) {
// code
}
do {
// code
} while (1);
#include <stdio.h>
int main()
{
int sum = 0;
for (int i = 1; i <= 10000; i++) {
sum += i;
}
printf("1 + 2 + ... + 10000 = %d\n", sum);
return 0;
}
for (int i = 0; i < 10; i++) {
if (i == 5) {
break;
// 从这里跳出整个循环
}
printf("%d\n", i);
}
for (int i = 0; i < 10; i++) {
if (i == 5) {
continue;
// 从这里跳出本轮循环
}
printf("%d\n", i);
}
for (int i = 0; i < 10; i++) {
if (i == 5) {
goto end;
// 跳转到标签end
}
printf("%d\n", i);
}
end: