17070047 / 17070047/CodeStructureCourse
王云晓
- Linguagem predominante
- C++
- Estrelas
- 16
- Forks
- 2
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
```c
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
#define maxsize 1000
typedef struct node
{
int keycard;
int depart,clas;
char name[100];
}lib;
typedef struct nod
{
lib s[maxsize];
int length;
}table;
table *create()
{
table *q;
int i;
q=(table*)malloc(sizeof(table));
printf("输入学生的人数\n");
scanf("%d",&q->length);
getchar();
q->s[0].clas=0;
q->s[0].depart=0;
q->s[0].keycard=0;
q->s[0].name[100]='\0';
for(i=1;i<=q->length;i++)
{
printf("卡号\n");
scanf("%d",&q->s[i].keycard);
printf("系号:\n");
scanf("%d",&q->s[i].depart);
printf("学号:\n");
scanf("%d",&q->s[i].clas);
printf("名字 \n ");
getchar();
scanf("%s",&q->s[i].name);
getchar();
}
return q;
}
void *quicksort(table *q,int left,int right)
{
int i,j,k;
if(lefts[0].keycard=q->s[i].keycard;
q->s[0].clas=q->s[i].clas;
q->s[0].depart=q->s[i].depart;
strcpy(q->s[0].name,q->s[i].name);
do
{
while(q->s[j].keycard>q->s[0].keycard) j--;
if(is[i].clas=q->s[j].clas;
q->s[i].depart=q->s[j].depart;
q->s[i].keycard=q->s[j].keycard;
strcpy(q->s[i].name,q->s[j].name);
i++;
}
while(q->s[i].keycards[0].keycard&&is[j].keycard=q->s[i].keycard;
q->s[j].depart=q->s[i].depart;
q->s[j].clas=q->s[i].clas;
strcpy(q->s[j].name,q->s[i].name);
j--;
}
}while(i!=j);
q->s[i].keycard=q->s[0].keycard;
q->s[i].clas=q->s[0].clas;
q->s[i].depart=q->s[0].depart;
strcpy(q->s[i].name,q->s[0].name);
quicksort(q,left,i-1);
quicksort(q,i+1,right);
}
return q;
}
void print(table *q)
{
int k;
for(k=1;k<=q->length;k++)
{
printf("学生姓名%s\n",q->s[k].name);
printf("卡号%d\n",q->s[k].keycard);
printf("系别%d\n",q->s[k].depart);
printf("班级%d\n",q->s[k].clas);
}
}
void seqsearch(table *q,int m)
{
int i;
for(i=1;i<=q->length;i++)
{
if(q->s[i].depart==m)
{
printf("学生姓名%s\n",q->s[i].name);
printf("卡号%d\n",q->s[i].keycard);
printf("系别%d\n",q->s[i].depart);
printf("班级%d\n",q->s[i].clas);
}
}
}
int main()
{
table *q;
int left,right,m,n,i;
scanf("%d",&i);
while(i!=-1)
{
printf("\n**********************************菜单**********************************\n");
printf("1.录入信息\n");
printf("2.将录入的信息按照借阅卡号排序\n");
printf("3.查找某系的学生的借阅卡信息\n");
scanf("%d",&n);
if(n==1)
q=create();
else if(n==2)
{
left=1;
right=q->length;
quicksort(q,left,right);
printf("按卡号排序结果\n\n");
print(q);
}
else if(n==3)
{
printf("输入要查找的系号");
scanf("%d",&m);
printf("%d系的学生借阅卡信息如下\n\n",m);
seqsearch(q,m);
}
printf("*********************继续执行请按1,退出请按-1*******************");
}
system("pause");
return 0;
}
```


Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
The issue contains a C program for a student library card system with a menu for input, sorting, and search. The problem is not described; only code and images (unavailable) are provided. To start, examine the code for logical errors, memory issues, or incorrect sorting. Run the program to see its behavior, then identify what the user expects to be fixed. The main entry point is the main() function; check the quicksort implementation and the create() function for potential bugs.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- c
- Domínio
- cli
- Tipo de issue
- Bug
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Status de atividade
- Estagnada
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 25/100