【发布时间】:2020-04-12 00:11:42
【问题描述】:
我想将数组的所有数字相加并从中得到总和。我正在努力解决的问题是我必须将我从输入中得到的数字乘以这使得一个数组有可能在一个数组中有两位数。 示例编号为 8346761。 挑战要求我取所有其他数字 (6,6,3),然后将它们相乘 (12,12,6) 并将第一个数字相加,例如 (1+2+1+2+6)=12。我只知道如何做 12+12+6=30 并且在这个特定部分寻求帮助。 我是编程新手,而且堆栈溢出,所以如果我做错了什么,请告诉我,以便我可以解决它。谢谢你
#include <cs50.h>
#include <stdio.h>
int main(void)
{
long long cardNum = get_long_long("What is your credit card number?\n");
printf("Number: %lld\n", cardNum);
long long cardNumz = cardNum;
long long Multnumbers[20];
cardNum /= 10;
for (long long i=0; i < 20; i++)
{
Multnumbers[i] = cardNum % 10;
Multnumbers[i] *= 2;
cardNum /= 100;
}
int sum = 0;
int loop;
for(loop = 0; loop < 20; loop++)
{
printf("%lld ", Multnumbers[loop]);
}
printf("\n");
long long number=Multnumbers[0];
for (long long rz=1;rz<11;rz++)
{
number = number*10+Multnumbers[rz];
}
printf("Big multiple number is %lld\n ", number);
long long Nonmultnumbers[20];
for (long long i=0; i < 20; i++)
{
Nonmultnumbers[i] = cardNumz % 10;
cardNumz /= 100;
}
int loopn;
for(loopn = 0; loopn < 20; loopn++)
printf("Non multnumbers%lld ", Nonmultnumbers[loopn]);
printf("\n");
【问题讨论】: