打火鸡 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 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建