1951469_ac_0ms_60k.c

来自「北大大牛代码 1240道题的原代码 超级权威」· C语言 代码 · 共 61 行

C
61
字号
# include <stdio.h>

int main()
{
	int mark, m;
	int i, p[10];

	while(scanf("%d",&p[0])==1)
	{
		mark = m = 0;
		for(i = 1; i < 9; i++)
			scanf("%d",&p[i]);
		for(i = 0; i < 8; i++)
		{
			if(p[i] != 0)
				mark++;
			if(p[i] > 0)
			{
				if(mark > 1)
					m += printf(" + ");
				if(p[i] != 1)
					m += printf("%d",p[i]);
				m += printf("x");
				if(i != 7)
				m += printf("^%d",8-i);
			}
			if(p[i] < 0)
			{
				if(mark == 1)
					m += printf("-");
				else
					m += printf(" - ");
			if(p[i] != -1)
					m += printf("%d",-1*p[i]);
			m += printf("x");
			if(i != 7)
				m += printf("^%d",8-i);

			}
		}
		if(p[8] > 0)
		{
			if(m == 0)
				m += printf("%d",p[8]);
			else
			    m += printf(" + %d",p[8]);
		}
		else
			if(p[8] < 0)
			{
				if(m == 0)
					m += printf("%d",p[8]);
				else
					m += printf(" - %d",-1*p[8]);
			}
		if(m == 0)
			printf("0");
		printf("\n");
	}
	return 1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?