17070047 / 17070047/CodeStructureCourse

刘付越

未關閉
#76 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
C++
星號
16
分支
2
PR 合併指標
30 天內沒有已合併 PR

描述

![0 6at9j8rma6qv gixzr2](https://user-images.githubusercontent.com/45326956/49653271-6190e600-fa6f-11e8-80d5-517681dd705f.png)
```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;
}
```
![qpbkz 7ye 9x
![0 6at9j8rma6qv gixzr2](https://user-images.githubusercontent.com/45326956/49653297-72d9f280-fa6f-11e8-890c-d444b513e073.png)
2h si s gs](https://user-images.githubusercontent.com/45326956/49653296-6fdf0200-fa6f-11e8-9056-1fb859974513.png)

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

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.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
c
領域
cli
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
停滯
描述清晰度
需要釐清
新手友好度
20/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。