[QUN] 2024-01-07 14:56 采纳率: 66.7%
浏览 2

中国MOOC大学 | 翁恺 | C语言 | 第七周编程练习 | 多项式加法

#背景
每行输入两个数字,第一个数字表示幂次,第二个数字表示系数。输入行数不确定。幂次不超过100。
只能运用非常基础的入门C语言知识,不能超纲。

#问题
1、如何解决二维数组行数不确定的问题?(因为我没有办法解决,所以我就假定行数是1024或者更大的已知数了)。
2、当我降序排列完后,如何合并幂次相同的系数?如何删除两个都为0的里数组?(也就是只提取出/剩下有意义的元素值)。

#代码

#include<stdio.h>
#include<stdlib.h>

int max(int a[][2],int len){
    int maxid = 0;
    int m;
    for(m=1;m<len;m++){
        if(a[m][0]>a[maxid][0]){
            maxid = m;
        }
    }
    return maxid;
}
    
int main()
{
    int input[1024][2]={{0,0}};
    int i=0;
    int cnt=0;
        //记录输入的2个数组 
        int x,y;
    while (1)
    { 
        scanf("%d %d",&x,&y);
        
        if(x>100){
            break;
        }

        input[i][0]=x;
        input[i][1]=y;

        if (input[i][0]==0){
            cnt++;
            if (cnt==2)
            {
                break;
            }
        }
        
        i++;
    }
    
    int len = sizeof(input)/sizeof(input[0]);
    int n;
    for(n=len-1;n>0;n--){
        int maxid = max(input,n+1);
        int t = input[maxid][0];
        int z = input[maxid][1];
        input[maxid][0]=input[n][0];
        input[maxid][1]=input[n][1];
        input[n][0]=t;
        input[n][1]=z;
    }

  • 写回答

2条回答 默认 最新

  • [QUN] 2024-01-07 14:57
    关注

    如果有会这道题的大佬,拜托教教我,小白头都想破了,呜呜呜。

    评论

报告相同问题?

问题事件

  • 创建了问题 1月7日

悬赏问题

  • ¥15 python怎么在已有视频文件后添加新帧
  • ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
  • ¥15 fluent里模拟降膜反应的UDF编写
  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵