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语言中,二维数组在内存中是按行存储的,也就是说二维数组的每一行在内存中是连续存储的。因此,二维数组指针可以直接指向二维数组的第一行,然后通过指针的偏移来访问其他行的元素,这样就可以省略第一个下标。这样做的好处是可以简化代码,提高代码的可读性和可维护性。