打火鸡 2020-12-04 19:52 采纳率: 0%
浏览 139

[c语言] 输入多项式,求导数并输出。

#include<stdio.h>
#include<malloc.h>
typedef struct node {
    int coef;
    int expn;
    struct node* next;
}PLOYList;

//创建多项式链表
PLOYList* create() {
    PLOYList* head;
    PLOYList* input;
    PLOYList* tail;
    int x, y, n;
    head = NULL;
    tail = head;
    input = (PLOYList*)malloc(sizeof(PLOYList));
    //n为多项式的项数
    printf("please input the number of items.\n");
    scanf("%d", &n);
    for (int i = 0; i < n; i++) {
        scanf("%d %d", &x, &y);
        input->coef = x;
        input->expn = y;
        input->next = NULL;
        if (head == NULL) {
            head = input;
            tail = input;
        }
        else {
            tail->next = input;
            tail = input;
        }
    }
    free(input);
    return head;
}


//多项式求导
PLOYList* der(PLOYList* head)
{
    PLOYList* p;
    p = head->next;
    while (p != NULL)
    {
        p->coef = p->coef * p->expn;
        p->expn = p->expn--;
        p = p->next;
    }
    return head;
}


//输出多项式
void print(PLOYList* f)
{
    PLOYList* p;
    p = f;
    //第一项没有加号,先输出
    printf("%d*", p->coef);
    printf("x^%d", p->expn);
    p = p->next;
    while (p != NULL)
    {
        /* 打印运算符号和系数 */
        if (p->coef >= 0) {
            printf("+");
            printf("%d*", p->coef);
        }//正系数加加号
        else if (p->coef < 0) //负系数直接输出
            printf("%d", p->coef);
        /* 打印指数 */
        printf("x^%d", p->expn);
        p = p->next;
    }
    printf("\n");
}


int main()
{
    PLOYList* f;
    f = create();
    printf("f(x)="); print(f);
    printf("f'(x)="); print(der(f));
    printf("\n");
    return 0;
}

写了好久也不知道是哪里的问题,求大佬解答(⑉・̆-・̆⑉)

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-09 15:35
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值