17070047 / 17070047/CodeStructureCourse
赵家敏
- Lenguaje dominante
- C++
- Estrellas
- 16
- Forks
- 2
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
```c
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
# define MAXSIZE 1000
struct student
{
int number;//卡号
char name[8];//名字
char major[20];//专业
int classnumber;//班号
};
typedef struct
{
student r[MAXSIZE+1];
int length;
}table;
table creat(table tab)
{
int x,i;
printf("请输入成员个数:\n");
scanf("%d",&x);
tab.length=x;
printf("请输入成员信息:\n");
for(i=1;i<=x;i++)
{
printf("请输入卡号:\n");
scanf("%d",&tab.r[i].number);
printf("请输入姓名:\n");
scanf("%s",tab.r[i].name);
printf("请输入专业:\n");
scanf("%s",tab.r[i].major);
printf("请输入班号:\n");
scanf("%d",&tab.r[i].classnumber);
}
return tab;
}
void output(table *tab)
{
int i;
for(i=1;i<=tab->length;i++)
{
printf("卡号:%d\n",tab->r[i].number);
printf("姓名:%s\n",tab->r[i].name);
printf("专业:%s\n",tab->r[i].major);
printf("班号:%d\n",tab->r[i].classnumber);
}
}
void output1(table *tab)
{
int i;
printf("卡号:%d\n",tab->r[i].number);
printf("姓名:%s\n",tab->r[i].name);
printf("专业:%s\n",tab->r[i].major);
printf("班号:%d\n",tab->r[i].classnumber);
}
table *quicksort(table *tab,int left,int right)
{
int i,j;
if(leftr[0]=tab->r[i];
do
{
while(tab->r[j].number>tab->r[0].number&&ir[i]=tab->r[j];
i++;
}
while(tab->r[i].numberr[0].number&&ir[j]=tab->r[i];
j--;
}
}while(i!=j);
tab->r[j]=tab->r[0];
quicksort(tab,left,i-1);
quicksort(tab,i+1,right);
}
return tab;
}
void search(table *tab)
{
int i=1;
char major[20];
printf("请输入要查找的专业:");
scanf("%s",&major);
while(i<=tab->length)
{
if(!strcmp(major,tab->r[i].major))
{
printf("卡号:%d\n",tab->r[i].number);
printf("姓名:%s\n",tab->r[i].name);
printf("专业:%s\n",tab->r[i].major);
printf("班号:%d\n",tab->r[i].classnumber);
}
i++;
}
}
int main()
{
int x,select=1;
table tab,*tab1;
int left,right;
tab=creat(tab);
while(select)
{
printf("请输入选择: \n");
scanf("%d",&x);
switch(x)
{
case 1:output(&tab);break;
case 2:
{
tab1=quicksort(&tab,1,tab.length);
output(tab1);
break;}
case 3:search(&tab);break;
case 4:select=0;printf("退出成功");break;
default:printf("请重新输入!!!");
}
}
return 0;
}
```



Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
The issue contains a C program for student record management with sorting and search functions. The bug is not explicitly described; the user posted code and images. Start by examining the code for logical errors, such as the undefined variable 'i' in output1() or potential buffer overflows in scanf. Run the program, test each menu option, and compare the output with expected behavior. The images might show runtime errors or incorrect output.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- c
- Área
- cli
- Tipo de issue
- Error
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100