你这么写的话,最后一个节点就没有输入a和b的值了啊
#include<stdio.h>
#include<malloc.h>
#define LEN sizeof(struct Plural)
struct Plural
{
int a;
int b;
struct Plural* next;
};
int main()
{
int suma=0, sumb=0;
struct Plural* head = NULL, * p1 = NULL, * p2 = NULL, * p = NULL;
for (int i = 0; i < 10; i++)
{
p1 = (struct Plural*)malloc(LEN);
scanf_s("%d%d", &p1->a, &p1->b);
if(head == NULL)
head = p1;
else
p2->next = p1;
p2 = p1;
}
p1->next = NULL;
p = head;
while (p)
{
suma += p->a;
sumb += p->b;
p = p->next;
}
printf("%d+%di", suma, sumb);
return 0;
}