2023-2024-1-20231317计算机基础与程序设计第十二周作业

作业信息

这个作业属于哪个课程 <班级的链接>(如2023-2024-1-计算机基础与程序设计
这个作业要求在哪里 <作业要求的链接>(如2023-2024-1计算机基础与程序设计第十二周作业)
这个作业的目标 <《C语言程序第11章》>
作业正文 https://www.cnblogs.com/TerMo/p/17904036.html 本博客链接

教材学习内容总结

  • 指针和一维、二维数组的关系;

  • 向函数传递数组;

  • 指针数组,命令形参数。
    1.在定义一个一维数组,普通情况下输出我们这么做:&a[i]
    那么如何用指针形式输出,我们这么做:*(a+i)
    scanf("%d",&a[i];
    printf("%4d",a[i]);

    定义指针变量int * pa
    scanf("%d",pa);
    printf("%4d",*pa);

    scanf("%d",&pa[i]);
    printf("%4d",pa[i]);

2.定义二维数组普通情况下:
scanf("%d",&p[i][j]);
printf("%d",p[i][j]);

教材学习中的问题和解决过程

  • 问题1:为什么二维数组指针第一个下标可以省略不写?
  • 问题1解决方案:二维数组指针的第一个下标可以省略不写是因为在C语言中,二维数组在内存中是按行存储的,也就是说二维数组的每一行在内存中是连续存储的。因此,二维数组指针可以直接指向二维数组的第一行,然后通过指针的偏移来访问其他行的元素,这样就可以省略第一个下标。这样做的好处是可以简化代码,提高代码的可读性和可维护性。
posted @ 2023-12-16 14:58  20231317莫善燎  阅读(6)  评论(0编辑  收藏  举报