17070047 / 17070047/CodeStructureCourse
刘付越
- Ngôn ngữ chính
- C++
- Star
- 16
- Fork
- 2
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả

```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("输入学生的人数");
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%d%d",&q->s[i].keycard,&q->s[i].depart,&q->s[i].clas);
printf("名字 ");
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);
}
}
void print(table *q)
{
int k;
for(k=1;k<=q->length;k++)
{
printf("学生姓名%s\n",q->s[k].name);
printf("借阅卡号%d\n所在系%d\n班级%d\n\n",q->s[k].keycard,q->s[k].depart,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班级%d\n",q->s[i].keycard,q->s[i].clas);
}
}
}
int main()
{
table *q;
int left,right,m,n,g;
do
{
printf("\n-------------菜单-------------\n1.录入学生借阅卡信息\n2.将录入的信息按照借阅卡号排序\n3.查找某系的学生的借阅卡信息\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("\n如果您要继续操作请输入1退出请输入-1\n");
scanf("%d",&g);
}while(g==1);
system("pause");
return 0;
}
```

2h si s gs](https://user-images.githubusercontent.com/45326956/49653296-6fdf0200-fa6f-11e8-9056-1fb859974513.png)
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
The issue contains a C program for a library card system with sorting and search functions. The problem is not described; the user posted code and images. To understand the issue, examine the code for bugs or missing features, run the program to see its behavior, and check if the images show errors. Start by compiling and testing the main() function in the provided code.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- c
- Lĩnh vực
- cli
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 20/100