C博客作业05--指针
0.展示PTA总分(0----2)
1.本章学习总结(2分)
1.1 学习内容总结
- 指针做循环变量:即将指针作为循环变量,在指针移动到某一个位置的时候,达到了循环结束的条件,循环结束。
for (p = a; p <= a + 9; p++)//即指针p作为循环变量 { sum = sum + *p; }
- 字符指针如何表示字符串:字符指针指向了字符数组的首地址。
定义指针*p,字符数组a[] p=a[]//字符指针表示字符数组a[]的首地址
- 动态内存分配:利用malloc或calloc(区别:malloc动态申请的内存不会自动赋初值,而calloc则会自动赋予初值0;相同点:都需要在结束时释放动态分配的内存)
`
if ((p = (int)malloc(或calloc)(n sizeof(int))) == NULL)//动态申请内存
{
printf("Not able to allocate memory.\n");
exit(1);
}
free(p);//释放申请的内存
1.2 本章学习体会
挺好的
达到
2.PTA实验作业(7分)
2.1 6-9 合并两个有序数组(2)
一开始的解题思路是合并后排序当数据很大时会超时 时间复杂度为n²
随后修改一下代码复杂度为n,思路是直接从最后一项比较两个数组的值,值大的放在最后,放后对应的下标-1