求Sn=a+aa+aaa+……+a…a的值.a是一个数字,n表示a的位数.例如:2+22+222+2222(此时n=4)下面的程序有错吗?为什么结果不对?浮点型要注意什么吗 #include #include #include main() { int a,n,i; float s0=0,s=0; printf

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 13:49:07

求Sn=a+aa+aaa+……+a…a的值.a是一个数字,n表示a的位数.例如:2+22+222+2222(此时n=4)下面的程序有错吗?为什么结果不对?浮点型要注意什么吗 #include #include #include main() { int a,n,i; float s0=0,s=0; printf
求Sn=a+aa+aaa+……+a…a的值.a是一个数字,n表示a的位数.例如:2+22+222+2222(此时n=4)
下面的程序有错吗?为什么结果不对?浮点型要注意什么吗 #include #include #include main() { int a,n,i; float s0=0,s=0; printf("请输入n的值:"); scanf("%d",&n); printf("请输入a的值:"); scanf("%d",&a); for(i=0;i

求Sn=a+aa+aaa+……+a…a的值.a是一个数字,n表示a的位数.例如:2+22+222+2222(此时n=4)下面的程序有错吗?为什么结果不对?浮点型要注意什么吗 #include #include #include main() { int a,n,i; float s0=0,s=0; printf
Sn=a+aa+aaa+...+aa..aaa (n个a)
=a(1+11+111+11...111(n个1)
=a/9*(10^1-1+10^2-1+10^3-1+...+10^n-1)
=a/9*(10^1+10^2+10^3+...+10^n-n)
=a/9*((10^(n+1)-1)/9-n)
=a/81*(10^(n+1)-10-9n)