初识C语言(二)

字符串

字符串,由双引号引起来的一串字符,称为字符串字面值,或者简称字符串。

12345678
#include <stdio.h>int main() {    "abcdef";    "hello";    "";//空字符串    //上面三个都是字符串。    return 0;}

"";代表空字符串

字符串的结束标志是一个\0的转义字符。在计算字符串长度的时候\0是结束标志,不算做字符串的内容。

1234567891011
#include <stdio.h>#include <string.h>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
#include <stdio.h>int main() {    printf("abc\n");//把\n的意思转变了,变成了换行。    return 0;}

printf("abc\n");这里转义字符\n就是把n的意思变成了换行。

1234567
#include <stdio.h>int main(){    printf("c:\test\32\test.c");    //无法正常打印,因为\t是水平制表符,想要显示一个反斜杠,要输入\\,两个反斜杠    printf("c:\\test\\32\\test.c");    return 0;}

上面的例子看出,想要显示一个反斜杠,需要输入两个反斜杠就可以正常显示。

循环语句

C语言实现循环的方式:while、for、do…while等

12345678910111213
#include <stdio.h>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
//两数相加#include <stdio.h>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
#include <stdio.h>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
#include <stdio.h>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
#include <stdio.h>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
#include <stdio.h>#define MAX 10int 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;}
🔍 ×