一、实验作业(5分)
1.1 PTA题目 递归法对任意10个数据按降序排序
设计思路
void sort(int a[],int n){
如果从主函数传进来的是1 直接退出
定义min=2147483647存放最小值,定义i=10-n,temp,t;
for i=0 to i=9 {
如果a[i]>=0{
if(a[i]<min){
min=a[i];
t=i;}}}
交换第10-n个数和剩下的最大数:
temp=a[10-n];
a[10-n]=min;
a[t]=temp;
sort(a,n-1);
}
end for
代码截图
调试问题
在写的时候运行出现只有第一个放了,后将a[0]换成a[10-n]就全换了
1.2 学生成绩管理系统
我选择死亡
二、截图本周题目集的PTA最后排名。(2分)
三、阅读代码(2分)
char * strcat(char s, const char append)
{
//将s所指向的字符串的首地址保存下来,以便使用
char *save = s;
//将s所指向的字符串的首指针移至串尾处,s指针指向的字符元素为‘\0‘
for (; *s; ++s);
//将append所指的字符串的元素复制到s所指向的字符串尾部,直至遇到‘\0‘
while ((*s++ = *append++) != ‘\0‘);
//返回追加后的字符串首地址
return(save);
}
这是OpenBSD对strcat的源代码,本函数的重点是将s所指向的字符串的首指针移至串尾处,十分巧妙。
四、本周学习总结(1分)
1.总结本周学习内容。
1.1 链表是什么?
链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
1.2 链表由什么组成
链表由一系列结点组成
1.3递归函数
就是反复调用自己 直到找到出口的函数
2.罗列本周一些错题。
2.1
错选C 答案D 错误原因:看错
2.2
错选B 答案A 按照B选项修改后可能导致文件编译不过