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

浙公网安备 33010602011771号