c++求s=a+aa+aaa+……+aaa…a的值,不用子函数
时间: 2023-09-08 16:11:58 浏览: 44
可以使用两层循环来实现不使用函数的方式,具体实现如下:
```c++
#include <iostream>
using namespace std;
int main()
{
int a, n;
cout << "请输入 a 和 n:" << endl;
cin >> a >> n;
int sum = 0;
int temp = 0;
for (int i = 1; i <= n; i++)
{
temp = 0;
for (int j = 1; j <= i; j++)
{
temp = temp * 10 + a;
}
sum += temp;
}
cout << "s 的值为:" << sum << endl;
return 0;
}
```
首先,我们需要从控制台输入 a 和 n。然后,我们声明两个变量 sum 和 temp,用于保存 s 和每一项的值。在外层循环中,我们遍历每一项,即 1、2、3、...、n。在内层循环中,我们使用 temp 变量来计算当前项的值,具体做法是将 a 不断乘以 10,然后加上之前计算出来的值。最后,将 temp 加入到 sum 中即可得到 s 的值。
相关问题
c++求s=a+aa+aaa+...+的值
以下是两种C++求s=a+aa+aaa+...+的值的例子:
1.使用循环语句计算
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int s = 0;
int sum = 0;
int a, n;
cin >> a >> n;
for (int i = 0; i < n; i++) {
s = s*10 + a;
sum = sum + s;
}
cout << sum;
return 0;
}
```
2.使用while循环语句计算
```c++
#include "stdio.h"
#include "conio.h"
int main() {
int a,n,count=1;
long int sn=0,tn=0;
printf("please input a and n\n");
scanf("%d,%d",&a,&n);
printf("a=%d,n=%d\n",a,n);
while(count<=n) {
tn=tn+a;
sn=sn+tn;
a=a*10;
++count;
}
printf("a+aa+...=%ld\n",sn);
getch();
return 0;
}
```
c++求s=a+aa+aaa+……+aaa…a的值
这里的 a 是一个数字,s 是所有由 a 组成的数的和,其中每个数的位数从 1 开始,一直到 n。我们可以通过循环来实现这个功能,具体实现如下:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int a, n;
cout << "请输入 a 和 n:" << endl;
cin >> a >> n;
int sum = 0;
int temp = 0;
for (int i = 1; i <= n; i++)
{
temp += a * pow(10, i - 1);
sum += temp;
}
cout << "s 的值为:" << sum << endl;
return 0;
}
```
首先,我们需要从控制台输入 a 和 n。然后,我们声明两个变量 sum 和 temp,用于保存 s 和每一项的值。在循环中,我们使用 pow 函数计算出每一项的值,然后将其加入到 temp 中,并将 temp 加入到 sum 中。最后,输出 sum 的值即可。