7-16一元多项式求导

设计函数求一元多项式的导数。

输入格式:

以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。

输出格式:

以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。

 

输入样例:

3 4 -5 2 6 1 -2 0

 

输出格式:

12 3 -10 1 6 0

 

 

 

代码:

 

#include<bits/stdc++.h>
using namespace std;
int main(){
    int co,ex;
    bool flag=false;
    while(scanf("%d%d",&co,&ex)!=EOF){
        
        if(ex!=0){
            if(flag==true){
                printf(" ");
            }
            flag=true;
            printf("%d %d",co*ex,ex-1);
        }
        
    }
    if(flag==false){
        printf("0 0");
    }
    return 0;
}

 

 

 

  

总结:

1、针对多组输入输出且数据没有固定数据量我们通常这样解决问题:采用while(scanf("%d",&n) != EOF)

scanf返回值为成功读入的元素个

 

返回类型为int, scanf()函数返回成功赋值的数据项数,出错时则返回EOF。注意scanf()函数返回int型
例如scanf("%d %d",&a,&b),如果a、b均赋值成功返回值为2,只是a赋值成功返回1,a、b都不成功返回0,出错的时候返回EOF。(EOF不是一个字符,它被定义为是int类型的一个负数-1。)

2、注意如果多项式是常数,则要输出 0 0

 

posted @ 2022-08-19 14:49  Yohoc  阅读(59)  评论(0)    收藏  举报