代码之家  ›  专栏  ›  技术社区  ›  Caveatrob

c语言中学生作业数据的分析和透视#

  •  1
  • Caveatrob  · 技术社区  · 15 年前

    我有一个学生/作业对列表,通过平面文件输入到我的应用程序的列表对象中,我想根据作业列表验证这些作业名称,我必须查看哪个学生完成了什么作业(如果有的话)。

    我想创建如下输出:

    1. (Heading) -- Student Name -- Assignent One -- Assignment TWo
    2. (Detail)  -- John Smith   --  <complete>   -- <complete>
    

    我怎样才能做到这一点?

    到目前为止我所拥有的: //HACCStudentBlogs将学生列表存储在一个字典中,我已经在每个找到的blog中添加了密钥的值(我知道,这很粗糙) //

    Dictionary<string, string> studentBlogs = new Dictionary<string, string>();
                foreach (JObject o in root)
                {
                    createDate = (string)o["createdDate"];
                    studentName = (string)d[(string)o["contributorName"]];
                    submittedStudents.Add(studentName);
                    title=(string)o["title"];
    
                        if (HACCstudentBlogs.ContainsKey(studentName))
                        {
    
                            HACCstudentBlogs[studentName] += "\t" + title.ToUpper();
                        }
                        else
                        {
    
    
    
                        }
    
    
    
    
                }
    
    2 回复  |  直到 15 年前
        1
  •  1
  •   mqp    15 年前
    1. 因为您希望每个学生有一行,所以最容易在学生列表上循环并为每个学生做一些事情。

    2. 每一行输出都将包含学生的信息,然后需要为每个作业准备一篇文章。所以在学生的循环中,会有一个循环。

    3. 在作业的循环中,我们需要查找是否有一对学生和作业。如果是的话,我们会吐出“完成”。否则,“不完成”

    // print some header information
    foreach (var student in studentList)
    {
        Display(student.Name);
        foreach (var assignment in assignmentList)
        {
           if (Exists(student, assignment, studentAssignmentPairs))
               Display("<complete>");
           else
               Display("<incomplete>");
        }
        // newline
    }
    

    加上一些巧妙的格式化技巧。

        2
  •  0
  •   RoughPlace    15 年前

    我们真的需要知道list对象是什么样子的