17070047 / 17070047/CodeStructureCourse

1707004738闫胜利

Aperta
#94 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C++
Stelle
16
Fork
2
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

```c
#include
#include

#define N 50
#define M 200
typedef struct node {

int id; //卡号
char name[N]; //姓名
int classid; //班号
char major[N]; //系别
} messagenode;
typedef struct {
messagenode adjlist[M];
int s; //学生人数
}student;

void creat(student *A,char file[]) //从文件录入每个学生的信息
{
int i,j,k;
FILE *fp;
fp=fopen(file,"r");
if (fp==NULL)
{
printf("打开文件失败!");
exit;
}
fscanf(fp,"%d",&A->s); //得到学生人数
for (i=0;is;i++)
{
fscanf(fp,"%d",&A->adjlist[i].id); //卡号
fscanf(fp,"%ls",&A->adjlist[i].name); //姓名
fscanf(fp,"%d",&A->adjlist[i].classid); //班号
fscanf(fp,"%ls",&A->adjlist[i].major); //系别
}
fclose(fp);
}

void poposort(student *A) //对卡号进行冒泡排序 卡号按照从小到大顺序排列
{
int i,j;
messagenode p;
for (i=0;is;i++)
for (j=0;js-i-1;j++)
{
if (A->adjlist[j].id>A->adjlist[j+1].id)
{
p=A->adjlist[j];
A->adjlist[j]=A->adjlist[j+1];
A->adjlist[j+1]=p;
}
}
}

void search(student *A,char major1[N]) //按系名进行检索
{
int i;
for (i=0;is;i++)
{
for (int j=0;jadjlist[i].major[j]!=major1[j])
break;
if(j==N-1)
{
printf("%3d %ls %4d %ls",A->adjlist[i].id,A->adjlist[i].name,A->adjlist[i].classid,A->adjlist[i].major);
printf("\n");
}
}
}
}

int main ()
{
student S;
char m[N];
char filename[]="text2.txt";
creat(&S,filename);
printf("卡号 姓名 班号 系别\n");
for (int i=0;i

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.