C语言多项式计算程序

代码如下:

#include 
#include 
struct data
{
	double coef,expn;
};
main()
{
	char ooo[]="Math Dash的多项式程序(请谨慎输入内容,该程序会将您输入的字符串最前端的数字看做数值)";
	char ooa[strlen(ooo)+6];
	sprintf(ooa,"title %s",ooo);
	system(ooa);
	puts(ooo);
	double b;
	printf("请输入多项式项数(输入-1强制退出程序)\n");
	while((scanf("%lf",&b)!=1)||((long)b!=b)||((b<=0)&&(b!=-1)))
	{
		getchar();
	}
	if(b==-1)
	{
		printf("强制退出成功!10秒后程序将自动关闭\n");
		int bo;
		for(bo=10;bo>=1;bo--)
		{
			printf("距离退出还有%d秒\r",bo);
			sleep(1);
		}
		return;
	}
	long c;
	c=(long)b;
	struct data *a;
	a=(struct data*)malloc(c*sizeof(struct data));
	long d;
	for(d=0;d=1;bo--)
	    	{
			    printf("距离退出还有%d秒\r",bo);
			    sleep(1);
		    }
		return;
		}
		printf("请输入第%d个项的指数(注意:指数为零的项将视为常量,并且该项的变量为0时,该项计算结果也是底数,也就是说,该程序将0^0视为1,并且,指数相同的项将会合并,输入-10000强制退出程序)\n",d+1);
		while((scanf("%lf",&a[d].expn)!=1)||(a[d].expn/0.000001!=(int)(a[d].expn/0.000001)))
		{
			getchar(); 
		}
		if(a[d].expn==-10000)
		{
			free(a);
			printf("强制退出成功!10秒后程序将自动关闭\n");
	    	int bo;
    		for(bo=10;bo>=1;bo--)
    		{
    			printf("距离退出还有%d秒\r",bo);
    			sleep(1);
    		}
    		return;
		}
	}
	for(;;)
	{
		for(d=0;da[d+1].expn)
			{
				struct data e;
				e=a[d];
				a[d]=a[d+1];
				a[d+1]=e;
				break;
			}
			if((a[d].expn==a[d+1].expn))
			{
				a[d].coef=a[d].coef+a[d+1].coef;
				int e;
				for(e=d+1;e=a[d+1].expn)
			{
				break;
			}
		}
		if(d==c-1)
		{
			break;
		}
	}
	printf("该函数的解析式为f(x)=");
	for(d=0;d

程序运行结果如下C语言多项式计算程序_第1张图片

你可能感兴趣的:(编程,科学技术,计算机科学,c语言)