字符串
字符串,由双引号引起来的一串字符,称为字符串字面值,或者简称字符串。
12345678 | int main() { "abcdef"; "hello"; "";//空字符串 //上面三个都是字符串。 return 0;} |
"";代表空字符串
字符串的结束标志是一个\0的转义字符。在计算字符串长度的时候\0是结束标志,不算做字符串的内容。
1234567891011 | int main(){ char arr1[] = "abc"; char arr2[] = {'a','b','c'}; printf("%d\n",strlen(arr1));//strlen-string length-用于计算字符串长度 printf("%d\n",strlen(arr2)); return 0;}//输出结果是3和随机值 |
strlen就是string length的缩写,用于计算字符串长度。
arr1这个数列包括的内容就是a,b,c,\0,计算长度时,最后一个不计算,所以是字符串长度就是3。
arr2这个数列包括a,b,c,最后不是\0结尾。在计算长度时,一直找到\0为止,长度不确定是多少。
转义字符
转义字符-把原来的意思转变了。
12345 | int main() { printf("abc\n");//把\n的意思转变了,变成了换行。 return 0;} |
printf("abc\n");这里转义字符\n就是把n的意思变成了换行。
1234567 | int main(){ printf("c:\test\32\test.c"); //无法正常打印,因为\t是水平制表符,想要显示一个反斜杠,要输入\\,两个反斜杠 printf("c:\\test\\32\\test.c"); return 0;} |
上面的例子看出,想要显示一个反斜杠,需要输入两个反斜杠就可以正常显示。
循环语句
C语言实现循环的方式:while、for、do…while等
12345678910111213 | int main() { int a = 0; while(a<20000) { printf("a=%d\n",a); a = a + 1; } if (a>=20000) { printf("a>=20000\n"); } return 0;} |
while(a<20000){……}的意思就是当a小于20000时,一直执行括号里的内容,直到a不再小于20000。
自定义函数
自定义函数,就是自己设计的函数,可以简化代码,复用代码。
12345678910111213141516171819 | //两数相加int Add(int x,int y){ int z = x + y; return z;}int main(){ int num1 = 10; int num2 = 20; int sum1 = 0; int sum2 = 0; int a = 100; int b = 200; sum1 = Add(num1,num2); sum2 = Add(a,b); printf("sum1 = %d\n",sum1); printf("sum2 = %d\n",sum2);} |
选择语句 if
123456789101112 | int main() { int input = 0; printf("输入1或0:"); scanf("%d",&input); if (input == 1) { printf("输入的数是1\n"); } else { printf("输入的数是0\n"); } return 0;} |
数组
数据就是一组相同类型元素的集合,数组的下标从0开始,依次递增1。int arr[10]; 定义一个存放10个整数数字的数组。char ch[20]; 定义一个存放20个字符的数组。float fl[20]; 定义一个存放20个浮点数的数组。
12345678910 | int main() { int arr[10] = {1,2,3,4,5,6,7,8,9,10};//定义一个数组,最多放10个元素 int i = 0; while (i<10) { printf("%d,",arr[i]); i = i + 1; } return 0;} |
上面的代码的功能是打印出arr这个数组的每个元素的内容。
常属性
const - 常属性,不能再更改数值
12345678910 | int main() { const int num = 4; printf("%d\n",num); num = 8;//num不会等于8,因为num是常属性。 printf("%d\n",num); const int n = 10;//n是变量,但是有常属性,所以我们说n是常变量,本质上是变量,使用常量时,不能用n。 int arr[10] = {0};//arr里面不能写n,因为这里要写常量,n是变量。 return 0;} |
const int n = 10; n是变量,但是有常属性,所以我们说n是常变量,本质上是变量,使用常量时,不能用n。
标识符常量
#define定义 标识符常量,例如#define MAX 10
12345678 | int define(){ int arr[MAX] = {0}; printf("%d\n",MAX); return 0;} |
枚举常量
枚举,一一列举,比如性别,三原色、星期几等。
枚举关键字:enum
123456789101112131415 | enum Sex{ MALE, FEMALE, SECRET};//上面的三个就是枚举常量int main(){ enum Sex s = FEMALE; printf("%d\n",MALE);//0 printf("%d\n",FEMALE);//1 printf("%d\n",SECRET);//2 return 0;} |