解题思路:多个选择语句和循环语句的嵌套
注意事项:注意隐藏的条件,进行多次修改
参考代码:
#include<stdio.h>
int main()
{
int a[50], n, i,k;
scanf_s("%d", &n);
if (n <= 50&&n>0)
{
k = n;
for (i = 0; i < n; i++)
scanf_s("%d", &a[i]);
if (k != 1)
{
switch (a[0])
{
case 1:
printf("x^%d", k); break;
case 0:
break;
case -1:
printf("-x^%d", k); break;
default:
{
printf("%dx^%d", a[0], k); break;
}
}
}
else
{
switch (a[0])
{
case 1:
printf("x"); break;
case 0:
break;
case -1:
printf("-x"); break;
default:
printf("%dx", a[0]); break;
}
}
for (i = 1; i < n; i++)
{
if (k != 2)
{
if (a[i] == 0)
{
k -= 1;
continue;
}
else if (a[i] < 0)
{
if (a[i] == -1)
{
k -= 1;
printf("-x^%d", k);
}
else
{
k -= 1;
printf("%dx^%d", a[i], k);
}
}
else
{
if (k != 3)
{
if (a[0] != 0)
{
if (a[i] == 1)
{
k -= 1;
printf("+x^%d", k);
}
else
{
k -= 1;
printf("+%dx^%d", a[i], k);
}
}
else
{
if (a[i] == 1)
{
k -= 1;
printf("x^%d+", k);
}
else
{
k -= 1;
printf("%dx^%d+", a[i], k);
}
}
}
else
{
if (a[0] != 0)
{
if (a[i] == 1)
{
k -= 1;
printf("+x^%d", k);
}
else
{
k -= 1;
printf("+%dx^%d", a[i], k);
}
}
else
{
if (a[i] == 1)
{
k -= 1;
printf("x^%d", k);
}
else
{
k -= 1;
printf("%dx^%d", a[i], k);
}
}
}
}
}
else
{
if (a[i] == 0)
continue;
else if (a[i] == 1)
{
printf("+x");
}
else if (a[i] == -1)
{
printf("-x");
}
else if (a[i] < 0)
{
printf("%dx", a[i]);
}
else
{
printf("+%dx", a[i]);
}
}
}
}
else return 0;
}
0.0分
5 人评分
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:1482 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1055 |
分糖果 (C++代码)浏览:1460 |
妹子杀手的故事 (C语言代码)浏览:1244 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:545 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:572 |
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)浏览:791 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:1103 |
DNA (C语言描述,蓝桥杯)浏览:1580 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)from DQM浏览:684 |