import java.util.Scanner; public class Main { /** * @param BoyHonest */ public static void main(String[] args) { Scanner input = new Scanner(System.in); int n = input.nextInt(); int a; for (int i = n; i >= 0; i--) { a = input.nextInt(); if (i == n)// 如果是n次项 { if (Math.abs(a) == 1)// 系数可能是 +1 -1 { if (a < 0) System.out.print("-"); ;// 如果为-1则输出“-”号 否则不输出 } else { if (a > 0) System.out.print(a);// 正常情况下输出a if (a < 0) System.out.print(a); } } else if (i != n)// 不是n次项 { if (i == 0)// 如果是最后一项 { if (a > 0) System.out.print("+" + a);// 正数输出“+”号再输出数字 if (a < 0) System.out.print(a);// 负数直接输出 } else// 其他情况 { if (Math.abs(a) == 1)// 如果系数为+1 或者-1 { if (a < 0) System.out.print("-"); ;// 输出“+”号或者“-”号 if (a > 0) System.out.print("+"); ; } else { if (a > 0) System.out.print("+" + a); ;// 否则正常输出 if (a < 0) System.out.print(a); } } } if (i != 0)// 如果系数不为0 输出指数项 { if (a!=0){ if(i==1)System.out.print("x");// 指数为1的时候只需要输出x else System.out.print("x^" + i); ; } } } } }
解题思路:借鉴的,仔细分析能看懂 ; debug一下, 当系数为0时,不去管它;
QQ号 1422682170 欢迎讨论 ```````````````
注意事项:
参考代码:
0.0分
2 人评分
C语言训练-舍罕王的失算 (C语言代码)浏览:1033 |
C语言训练-阿姆斯特朗数 (C语言代码)浏览:850 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:530 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:373 |
C二级辅导-阶乘数列 (C语言代码)浏览:688 |
C语言训练-数字母 (C语言代码)浏览:649 |
C语言训练-列出最简真分数序列* (C语言代码)浏览:604 |
1054题解浏览:460 |
剪刀石头布 (C++代码)浏览:1703 |
简单的a+b (C语言代码)浏览:819 |