#include<stdio.h>
#include<stdlib.h>
struct List {
int factor;//系数
int index;//指数
struct List* next;
};
/*创建节点*/
List* LNodeCreat(int a, int b)
{
List* P = (List*)malloc(sizeof(List));
P->factor = a;
P->index = b;
P->next = NULL;
return P;
}
/*输出表达式*/
void L_Print(List* L)
{
if (L->next == NULL)
{
printf("Invalid");
}
List* tail = L->next;
while (tail != NULL)
{
printf("%2dX", tail->factor);
printf("^%d", tail->index);
printf("+");
tail = tail->next;
}
}
int main(void)
{
int aa, bb;//分别对应系数指数
List* Ptq, * Ptr;
List* L = (List*)malloc(sizeof(List));
L->next = NULL;
Ptq = L->next;
for (int i = 1;; i++)
{
printf("请输入第%2d项的系数:", i);
scanf_s("%d", &aa);
printf("请输入第%2d项的指数:", i);
scanf_s("%d", &bb);
if (aa == 0 && bb == 0)
{
printf("\n");
break;
}
Ptr = LNodeCreat(aa, bb);
Ptq = Ptr;
Ptq = Ptq->next;
}
L_Print(L);
return 0;
}
#include<stdlib.h>
struct List {
int factor;//系数
int index;//指数
struct List* next;
};
/*创建节点*/
List* LNodeCreat(int a, int b)
{
List* P = (List*)malloc(sizeof(List));
P->factor = a;
P->index = b;
P->next = NULL;
return P;
}
/*输出表达式*/
void L_Print(List* L)
{
if (L->next == NULL)
{
printf("Invalid");
}
List* tail = L->next;
while (tail != NULL)
{
printf("%2dX", tail->factor);
printf("^%d", tail->index);
printf("+");
tail = tail->next;
}
}
int main(void)
{
int aa, bb;//分别对应系数指数
List* Ptq, * Ptr;
List* L = (List*)malloc(sizeof(List));
L->next = NULL;
Ptq = L->next;
for (int i = 1;; i++)
{
printf("请输入第%2d项的系数:", i);
scanf_s("%d", &aa);
printf("请输入第%2d项的指数:", i);
scanf_s("%d", &bb);
if (aa == 0 && bb == 0)
{
printf("\n");
break;
}
Ptr = LNodeCreat(aa, bb);
Ptq = Ptr;
Ptq = Ptq->next;
}
L_Print(L);
return 0;
}