17070047 / 17070047/CodeStructureCourse

赵家敏

Abierto
#77 0 comentarios 0 reacciones 0 asignados Ver en GitHub
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;
}
```
![8 lgpst 10lo0s 8apyh3](https://user-images.githubusercontent.com/45332466/49653644-8afe4180-fa70-11e8-9b6d-2ec8cc9d5ae9.png)
![x6_b9 rxwunyz z 6 o zq2](https://user-images.githubusercontent.com/45332466/49653646-8df93200-fa70-11e8-852d-37cfefe9c0ce.png)
![zx42u 8_99 enk808 8 h](https://user-images.githubusercontent.com/45332466/49653650-90f42280-fa70-11e8-9e7c-025291c3a696.png)

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

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.