第十二周作业

问题 回答
这个作业属于那个课程 C语言程序设计
这个作业要求在哪 https://edu.cnblogs.com/campus/zswxy/computer-scienceclass3-2018/homework/3237
在这个课程的目标是 学会运用二级指针的概念,以及指针数组的应用了解指针与函数的关系,掌握指针作为函数返回值,掌握递归函数的操作
这个作业在那个具体方面帮助我实现目标 练习指针与函数
参考文献 C语言程序设计》

6-1 计算最长的字符串长度 (15 分)
本题要求实现一个函数,用于计算有n个元素的指针数组s中最长的字符串的长度。

函数接口定义:

int max_len( char *s[], int n );

其中n个字符串存储在s[]中,函数max_len应返回其中最长字符串的长度。

裁判测试程序样例:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define MAXN 10
#define MAXS 20
int max_len( char *s[], int n );

int main()
{
    int i, n;
    char *string[MAXN] = {NULL};

    scanf("%d", &n);
    for(i = 0; i < n; i++) {
        string[i] = (char *)malloc(sizeof(char)*MAXS);
        scanf("%s", string[i]);
    }
    printf("%d
", max_len(string, n));

    return 0;
}

/* 你的代码将被嵌在这里 */
输入样例:

4
blue
yellow
red
green

输出样例:

6

1)实验代码

int max_len( char *s[], int n ){
    int max=0;
    int i,j;
    
    for(i=0;i<n;i++){
        if(strlen(s[max])<strlen(s[i])){
            max=i;    
        }
    }    
    return strlen(s[max]);
}

2)设计思路

3)遇到的问题及解决方法

题意理解不够清楚
4)运行截图

6-2 统计专业人数 (15 分)
本题要求实现一个函数,统计学生学号链表中专业为计算机的学生人数。链表结点定义如下:

struct ListNode {
    char code[8];
    struct ListNode *next;
};

这里学生的学号共7位数字,其中第2、3位是专业编号。计算机专业的编号为02。

函数接口定义:

int countcs( struct ListNode *head );

其中head是用户传入的学生学号链表的头指针;函数countcs统计并返回head链表中专业为计算机的学生人数。

裁判测试程序样例:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct ListNode {
    char code[8];
    struct ListNode *next;
};
struct ListNode *createlist(); /*裁判实现,细节不表*/
int countcs( struct ListNode *head );
int main()
{
    struct ListNode  *head;

    head = createlist();
    printf("%d
", countcs(head));
	
    return 0;
}

/* 你的代码将被嵌在这里 */
输入样例:

1021202
2022310
8102134
1030912
3110203
4021205
#

输出样例:

3

1)实验代码

int countcs( struct ListNode *head )
{
    struct ListNode *p=head;
    int count=0;
    for(p=head;p!=NULL;p=p->next)
    {
        if(p->code[1]=='0'&&p->code[2]=='2')
        {
            count++;
        }
    }
    return count;
}

2)设计思路

3)遇到的问题及解决方法

4)运行截图

累计代码行数和博客字数

时间 博客字数 代码行数
第一周 200 40
第二周 250 70
第三周 250 80
第四周 350 90
第五周 400 90
第六周 450 100
第七周 500 150
第八周 450 200
第九周 470 200
第十周 480 210
第十二周 490 210

学习感悟
1)总是莫名其妙的写错一些不该写错的地方,可能还是因为不够专注吧
2)疑惑:对于这次预习的内容,看的很迷,希望老师多讲一下这次的预习内容

结对编程
过程:虽然说是说一起学习,其实全程都是搭档在告诉我做,她老早就把作业做完了。
优点:1.有人告诉做,不会失去信心,有继续做的动力
2.交换一下思路吧。
3.相互学习,传递经验
4.可以督促学习
缺点:经验不足!

原文地址:https://www.cnblogs.com/zuoshuai/p/10880910.html