|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
#include<stdlib.h>
struct MyNode
{
int num;
int lay;
int sort;
struct MyNode *pNext;
};
int main()
{
printf("输入信息\n");
int n,a,b,c;
scanf("%d,%d,%d,%d",&n,&a,&b,&c);
struct MyNode *pNode =(struct MyNode *)malloc(n*sizeof(MyNode));
int i;
for(i=0;i<n;i++)
{
pNode[i].num=i+1;
pNode[i].lay=0;
pNode[i].sort=0;
pNode[i].pNext=NULL;
}
for(i=0;i<n;i++)
{
int j=i;
while(j)
{
if(pNode[i].num%i==0)
{
pNode[i].lay=pNode[j-1].lay+1;
break;
}
j--;
}
}
int lay=0;
for(i=0;i<n,i++)
{
if(pNode[i].lay>lay)
lay=pNode[i].lay;
}
struct MyNode **play= (struct MyNode**)malloc(lay*sizeof(MyNode*));
for(int j=0;j<=lay;i++)
{
struct MyNode*pTemp=NULL;
int k=0;
for(int i=0;i<n;i++)
{
if(k==0)
{
if(pNode[i].lay==j)
{
play[j]=&pNode[i];
pTemp=play[j];
k=1;
}
}
else
if(pNode[i].lay==j)
{
pTemp->pNext=&pNode[i];
pTemp=pTemp->pNext;
}
}
}
struct MyNode*ptemp=NULL;
for(i=0;i<=lay;i++)
{
ptemp=play[i];
while(ptemp!=NULL)
{
printf("%5d",ptemp->num);
ptemp=ptemp->pNext;
}
printf("\n");
}
struct MyNode*pHead=play[0];
for(i+0;i<lay;i++)
{
while(play[i]->pNext!=NULL)
{
play[i]=play[i]->pNext;
}
play[i]->pNext=play[i+1];
}
int num=1;
ptemp=pHead;
while(ptemp!=NULL)
{
if(ptemp->num==a)
d=ptemp->sort;
if(ptemp->num==b)
e=ptemp->sort;
if(ptemp->num==c)
f=ptemp->sort;
ptemp=ptemp->pNext;
}
printf("输入排名:%d,%d,%d\n",d,e,f);
return 0;
}
图片中的错误是为什么啊?哪位大佬可以给我解答一下?
|
-
|