旧日风声


私信TA

用户名:shawfi

访问量:7006

签 名:

等  级
排  名 3637
经  验 1883
参赛次数 0
文章发表 18
年  龄 0
在职情况 学生
学  校 重庆邮电大学
专  业

  自我简介:

解题思路:
直接顺序输出,注意多项式的格式问题。

注意事项:

特别注意的格式:

  1. x的次数为1时,输出为x,不是x^1。

  2. x的次数为0时,输出为系数。

  3. 第一项系数为正时,没有+号。



参考代码:

//1512: 多项式输出 

#include <stdio.h>
int main()
{
	int a[105], n, i;
	
	scanf("%d", &n);
	
	for( i = n; i >= 0; i-- )
	{
		scanf("%d", &a[i]);
	}
	
	for( i = n; i >= 0; i-- )
	{
		if( i == n )
		{
			if( a[i] == 0 )
				;
			else if( a[i] == 1 )
				printf("x^%d", i);
			else if ( a[i] == -1 )
				printf("-x^%d", i);
			else
				printf("%dx^%d", a[i], i);
		}
			
		else if( i == 0 )
		{
			if( a[i] > 0 )
				printf("+%d", a[i]);
			if( a[i] < 0 )
				printf("%d", a[i]);
		}
		
		else if( i == 1 )
		{
			if( a[i] != 0 )
			{
				if( a[i] > 0 )
				{
					if ( a[i] == 1 )
						printf("+x");
					else
						printf("+%dx", a[i]);
				}
				else
				{
					if ( a[i] == -1 )
						printf("-x");
					else
						printf("%dx", a[i]);
				}
					
			}
		}
		
		else
		{
			if( a[i] != 0 )
			{
				if( a[i] > 0 )
				{
					if ( a[i] == 1 )
						printf("+x^%d", i);
					else
						printf("+%dx^%d", a[i], i);
				}
				else
				{
					if ( a[i] == -1 )
						printf("-x^%d", i);
					else
						printf("%dx^%d", a[i], i);
				}
					
			}
		}
				
	}
}


 

0.0分

0 人评分

  评论区

  • «
  • »