根据f(x)f(y)=f(x+y),g(x)+g(y)=g(x+y),令x=1,y=n,分别求得数列的通项,bn=n,再利用错位相减法求数列的和即可.
【解析】
∵f(x)f(y)=f(x+y),
∴令x=1,y=n可得
∴
∴{an}是以为首项,为公比的等比数列
∴
∵g(x)+g(y)=g(x+y),
∴∴令x=1,y=n可得g(1)+g(n)=g(n+1)
∴bn+1-bn=g(1)=b1=1
∴数列{bn}是以1为首项,1为公差的等差数列
∴bn=n
∴数列{anbn}的前n项和为Sn=1×+2×+…+n×
∴Sn=1×+2×+…+(n-1)×+n×
两式相减可得Sn=1×+1×+1×+…+-n×
∴Sn=2--
故选D.