版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
PAT考试乙级1010之一元多项式求导
题目:
设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。)
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
代码:
#pragma warning(disable:4996)
#include <stdio.h>
#include <string.h>
#include<stdlib.h>
#include <memory.h>
#include <math.h>
int main(void)
{
int a, b, n = 0;
while (scanf("%d %d", &a, &b) != EOF)
{
if (b > 0)
{
if (n == 0)
{
printf("%d %d", a * b, b - 1);
n++;
}
else
{
printf(" %d %d", a * b, b - 1);
}
}
}
if (n == 0)
{
printf("0 0");
}
return 0;
}
这道题开始我用字符串数组做,麻烦的要命,还要考虑多位数情况,后来看了下网上的思路,发现整型数组回车也能结束后,干脆就用整型数组,遇到回车就结束,一组输入完毕,分析输出,最后考虑零多项式。