辞白iz 2020-12-30 18:48 采纳率: 33.3%
浏览 16

用顺序表实现简单的一元多项式的计算,不显示任何警告错误,但是运行明显不对,求大神帮忙看看有没有问题!

#include<stdio.h>
typedef int elemtype;
#define MAX_SIZE 100
#define LISTINCREMENT 10
#include<malloc.h>
#define ERROR 0 

typedef struct{
	elemtype *elem;
	int size;	
	int capacity;
	
}seqlist;

void initlist(seqlist L)//初始化顺序表L。 
{
	L.elem = (elemtype *)malloc(sizeof(elemtype)*MAX_SIZE);
	L.size = 0;
	L.capacity = MAX_SIZE;
} 

void insertlist(seqlist L,int i,elemtype e)   //在顺序线性表上的第i个位置上插入元素e 
{
	if (i<1&&i>L.size)//判断i取值是否合理 
	{
		printf("插入位置不合法,请重新输入\n");
		 
	}
	if (L.size>=L.capacity) {//当储存空间满的时候,需要先扩容,再插入。 
		printf("当前储存空间已满,增加分配\n");
		elemtype *newbase = (elemtype *)malloc(sizeof(elemtype)*(L.capacity+LISTINCREMENT));
		if (!newbase){
			printf("增加分配失败!请查找原因。\n");
			}
		L.elem=newbase;  
	}
//	elemtype q=&(L.elem[i-1]);
	int m;
	for (m=L.size-1;m=i-1;m--){
		L.elem[m]=L.elem[m-1];
	}
	L.elem[m]=e;
	L.size++; 
}

void showlist(seqlist *L)
{

	int i=0;
	if(L.size=0)printf("表为空。\n");
	for(i=0;i=L.size-1;i++)
	{
		printf("%d\t",L.elem[i]);
	}
 } 
 
int main (){
	seqlist L;
	initlist(L);
	int i=1;
	elemtype e=5;
	showlist(L);
//	scanf("%d %d",i,e);
//	insertlist(L,i,e);
//	showlist(L);
	
	
	return 0;
}
  • 写回答

2条回答 默认 最新

  • 八云黧 2020-12-31 11:34
    关注

    初始化函数i不合理的判断为什么用的是逻辑与?

    评论

报告相同问题?

悬赏问题

  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?