美文网首页
C语言学习 day3

C语言学习 day3

作者: y_7539 | 来源:发表于2022-05-19 17:59 被阅读0次

define 是一个预处理指令

1.define 定义符号
define MAX 1000
2.define 定义宏

//define 定义宏
#define ADD(X, Y) ((X) + (Y))
int main()
{
    printf("%d\n", 5 * ADD(2, 3));
}

指针

内存
32位--32根地址线--物理线--1/0 2^32 bit = 512MB
一个内存单元是一个字节,每个内存单元的编号就是内存地址

int main()
{
    int a = 3;
    printf("%p\n", &a); //%p 用来打印地址的
    int* pa = &a; //pa用来存放地址的,在C语言中叫指针变量     
    //*说明pa是指针变量
    //int 说明pa执行的对象是int类型
    char c = 'w';
    char* pc = &c;
    printf("%p\n", pc);
    return 0;
}
int main()
{
    int a = 10;
    int* pa = &a;
    *pa = 20; //*解引用  *pa通过pa的地址找到a
    printf("%d\n", a);
}
//指针变量的大小
int main()
{
    printf("%d\n", sizeof(int*)); //4
    printf("%d\n", sizeof(char*)); //4
    printf("%d\n", sizeof(short*)); //4
    printf("%d\n", sizeof(long*)); //4
    printf("%d\n", sizeof(double*));  //4
}

结构体

结构体使C语言有能力描述复杂对象

//创建学生
struct Stu
{
    char name[20];
    int age;
    double score;
};

int main()
{
    struct Stu s = { "张三", 18, 98.7 }; //结构体创建和初始化
    printf("1:%s %d %lf\n", s.name, s.age, s.score);
    struct Stu* ps = &s;
    printf("2:%s %d %lf\n", (*ps).name, (*ps).age, (*ps).score);
    printf("3:%s %d %lf\n", ps->name, ps->age, ps->score);
}

选择、分支、循环

分支

if语句

//分支
int main()
{
    int age = 20;
    if (age < 18)
        printf("未成年\n");
    else
    {
        printf("成年\n");
        printf("可以谈恋爱\n");
    }
        
}

else 后面无大括号,只能控制一行语句。else跟最近的if匹配,可以用{}区分开。

switch语句

//switch语句
int main()
{
    int day = 0;
    scanf("%d", &day);
    switch (day)
    {
    case 1:
        printf("周一");
        break;
    case 2:
        printf("周二");
        break;
    case 3:
        printf("周三");
        break;
    case 4:
        printf("周四");
        break;
    case 5:
        printf("周五");
        break;
    case 6:
        printf("周六");
        break;
    case 7:
        printf("周末");
        break;
    }
}

case 整型常量表达式:
语句;
default可以出现在任意位置
break跳出自己所在的语句

相关文章

网友评论

      本文标题:C语言学习 day3

      本文链接:https://www.haomeiwen.com/subject/wmxtprtx.html