Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 我必须对学生的记录进行排序,首先按级别排序,然后按姓名排序_C - Fatal编程技术网

C 我必须对学生的记录进行排序,首先按级别排序,然后按姓名排序

C 我必须对学生的记录进行排序,首先按级别排序,然后按姓名排序,c,C,我所做的代码如下……但它根本没有对结果进行排序。它只是打印与输入相同的内容。请帮帮我 strcpy(newnode->stud_name,name); strcpy(newnode->stud_intake,id); strcpy(newnode->stud_branch,course); newnode->level=slevel; newnode->next=NULL; if(list==NULL) list=newnode; else

我所做的代码如下……但它根本没有对结果进行排序。它只是打印与输入相同的内容。请帮帮我

     strcpy(newnode->stud_name,name);
strcpy(newnode->stud_intake,id);
strcpy(newnode->stud_branch,course);
newnode->level=slevel;
newnode->next=NULL;


if(list==NULL)
    list=newnode;
else 
{
    if(slevel==list->level)
    {
        temp=list;          
        placefound=0;
    while(temp!=NULL && slevel==temp->level)
    {
            if(name>temp->stud_name)
            {
                prev=temp;
                temp=temp->next;
            }//else
            //placefound=1;
    }
            newnode->next=prev->next;
            prev->next=newnode;
}

在不详细调试链表代码的情况下,有一点非常可疑:

if(name>temp->stud_name)

可能是错误的-您无法将C字符串与>。在C标准库中查找如何使用strcmp函数。

如果不详细调试链表代码,有一点非常可疑:

if(name>temp->stud_name)

可能是错误的-您无法将C字符串与>。在C标准库中查找如何使用strcmp函数。

缺少右括号;查看您的ifslevel==list->level语句,并在正确的位置添加结尾};查看ifslevel==list->level语句,并在正确的位置添加closing}。