current position:Home>Can someone help me see if there is a problem with the code, why the operation is not successful, and there are no errors

Can someone help me see if there is a problem with the code, why the operation is not successful, and there are no errors

2022-01-27 03:04:12 CSDN Q & A

#include "stdafx.h"
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>
#define n 5 / Set up , Changeable /
#define m 3 / Set up , Changeable /
#define w 2 / Set up , Changeable /
struct achievement /* Define the structure that represents the grade /
{int schoolnumber;/
School number /
char name[20]; /
full name /
int mark; /
fraction /
int result;};
struct pro /
Represents the structure of the project /
{int tag;/
Item number */
struct achievement ach[m+w];
int number;
};
struct Node
{struct pro date;
struct Node next;
};
void main()
{
int i,j,t;
int x[n]={0};int y[n]={0}; /
x[n] and y[n] Indicates the total scores of men's and women's groups respectively */
struct Node head;
struct Node p;
struct Node q;
if((head=(struct Node
)malloc(sizeof(struct Node)))==NULL) exit(1);
head->next=NULL; /
Initialize single chain table /
p=head;
for(i=0;i<m+w;i++) /* Enter grades */
{
j=i+1;
printf(" Please enter the first %d Information about a project \n",j);
p->date.number=j;
printf(" The number of times the name is taken is :");
scanf_s("%d",p->date.tag);
{ printf(" Incorrect input , Please re-enter !");
getchar(); / Add this function to prevent the program from entering an infinite loop when an input error occurs /
getchar();
printf(" The number of times the name is taken is :");
scanf_s("%d",p->date.tag);
}
t=1;
while(t<=p->date.tag)
{
printf(" The first %d First name :",t);
scanf_s("%s",p->date.ach[t-1].name);
printf(" The first %d Famous school :",t);
scanf_s("%d",p->date.ach[t-1].schoolnumber);
printf(" The first %d The score of the first name :",t);
scanf_s("%d",p->date.ach[t-1].mark);
p->date.ach[t-1].result=t;
t++;
}
if(j!=m+w)/
Note that there /
{q=(struct Node
)malloc(sizeof(struct Node)); /
Generate new nodes */
p->next=q;
p=q;
p->next=NULL;
}
}
for(i=0;i<n;i++) /* Produce transcripts */
{
j=i+1;
printf("\n School %d school report :\n",j);
p=head;
while(p!=NULL)
{
t=1;
while(t<=p->date.tag)
{
if(p->date.ach[t-1].schoolnumber==j)
{
printf(" Award winning projects :%d ",p->date.number);
printf(" Ranking :%d ",p->date.ach[t-1].result);
printf(" Name of the winner :%s ",p->date.ach[t-1].name);
printf(" Score :%d \n",p->date.ach[t-1].mark);
if(p->date.number<=m)
x[i]=x[i]+p->date.ach[t-1].mark;
else
y[i]=y[i]+p->date.ach[t-1].mark;
}
t++;
}
p=p->next;
}
printf("\n Total score of men's group :%d ",x[i]);
printf(" Total score of women's group :%d \n",y[i]);
printf(" Total group score :%d\n",x[i]+y[i]);
}
for(i=0;i<m+w;i++) /* Free the requested memory space */
{p=head->next;
free(head);
head=p;
}
_getch();
}

copyright notice
author[CSDN Q & A],Please bring the original link to reprint, thank you.
https://en.cdmana.com/2022/01/202201270304073594.html

Random recommended