|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
验算过好多遍,感觉没什么问题,但结果不正确
希望就在这个基础上改改,感谢!
求Sn=a+aa+aaa+...+aaa...a(n个a)之值,其中a是一个数字,n表示a的位数,n由键盘输入。
例:2+22+222+2222(此时n=4)
- #include <stdio.h>
- #include <math.h>
- int main()
- {
- int a,n,S=0;
- int i;
- printf("输入数字a的值(0~9的一个数):");
- scanf("%d",&a);
- printf("输入想加到的位数n的值(整数):");
- scanf("%d",&n);
- for(i=0; i<=n-1; i++)
- {
- S+=a*pow(10,i)*(n-i); //i是10的指数,(n-i)是几个相同的数
- }
- printf("\n%d",S);
- return 0;
- }
复制代码
大概是这样
4 3 2 1 (n-i)
2 2 2*10^0
22 2+20 2*10^0 + 2*10^1
222 2+20+200 2*10^0 + 2*10^1 + 2*10^2
2222 2+20+200+2000 ... + ... + ... + ...
- int a,n,S,s;
- S=s=0;
- printf("输入数字a的值(0~9的一个数):");
- scanf("%d",&a);
- printf("输入想加到的位数n的值(整数):");
- scanf("%d",&n);
- for(int j=0;j<n;j++){
- for(int i=0; i<=j; i++)
- {
- s+=a*(int)pow(10,i); //i是10的指数
- }
- S+=s;
- s=0;
- }
- printf("\n%d",S);
复制代码
改成这样子
|
|