在进行作业时,其中:
- 程序以文本1 + 22 + 333 + 4444 + . . . + nn. . . n }n及其结果的形式打印出和。数字n ∈ {1,2,.. .,9}由用户提供 *
我卡在了一个点上,我不知道如何把数字粘成一个整数,所以如何把“333”转换成333,等等。
下面是我的代码:
#include <stdio.h>
#include <string.h>
int main()
{
printf("Program calculates a sum.\nAutor: Jakub Drozd\n");
int n;
int sum = 0;
printf("Enter the length of the sum (no more than 9): ");
while (scanf_s("%d", &n)!=1 || n < 1 || getchar()!='\n')
{
printf("Wrong input, enter the length of the sum: ");
int c;
while ((c = getchar()) != '\n' && c != EOF)
;
}
for (int i = 1; i <= n; i++)
{
if (i == 1);
else { printf(" + "); }
for (int j = 1; j <= i; j++)
{
printf("%d", i);
}
}
printf("\nEnd of the program\n");
return 0;
}
正如你所看到的,程序正确地显示了要相加的数字,但是我不知道如何将它们转换成整数来求和。
1条答案
按热度按时间cs7cruho1#
不要打印出单个数字,而是将它们加在一起形成实际值,然后将它们加到您呈现的总和中。
数字的产生可能就像
然后将数字相加就像创建一个变量来保存总和一样简单,然后向其添加: