我正在做一个小项目,并停留在这部分上。
我基本上是在尝试取用户输入的A1和B1的数字作为总和(3计算A1和B1的元素之和)。 >
这是我到目前为止所获得的,并且对于如何解决此问题没有任何想法吗?
任何帮助总是值得感谢的!
有关程序的背景信息是否可以更好地理解:
该程序用于从用户(A1,B1)获取2组数字并将其放入数组中。输入数字后,将通过菜单提示用户,提示用户要使用数字的选项。该选项将被发送到4种情况之一(到目前为止已写出3种情况)
#include<stdio.h>
#include<stdlib.h>
int main()
{
int option; // Int for Menu Option choice
int i, a, j; //Int FOR A1
int n = 10; // Int FOR A1
int number[10]; // Int FOR A1
int sum = 0; // SUM FOR OPTION 3
int o, s, k; // Int FOR B1
int m = 10; // Int FOR B1
int num[10]; //Int for B1 ARRAY
printf("Enter 10 Numbers for A1\n"); // Numbers for A1
for (i = 1; i < n; ++i)
scanf("%d", &number[i]);
printf("Enter 10 Numbers for B1: \n"); //Numbers for B1
for (o = 1; o < m; ++o)
scanf("%d", &num[o]);
//USER PICKS OPTION
printf("******************************************************************\n");
printf("*\tSelect one of the following options *\n");
printf("*\t1 Sort A1 values in Ascending Order *\n");
printf("*\t2 Sort B1 values into Descending Order *\n");
printf("*\t3 Compute the Sum of the Elements of A1 and B1 *\n");
printf("*\t4 Subtract the Elements of B1 from the Elements of A1 *\n");
printf("******************************************************************\n");
printf("Enter Your Option: ");
scanf("%d", &option);
switch (option)
{
case 1:
for (i = 0; i < n; ++i)
{
for (j = i + 1; j < n; ++j)
{
if (number[i] > number[j])
{
a = number[i];
number[i] = number[j];
number[j] = a;
}
}
}
printf("The numbers arranged in ascending order are given below \n");
for (i = 0; i < n; ++i)
printf("%d\n", number[i]);
break;
case 2:
for (o = 0; o < m; ++k)
{
for (k = o + 1; k < m; ++k);
{
if (num[o] < num[k])
{
s = num[o];
num[o] = num[k];
num[k] = s;
}
}
}
printf("The numbers arranged in descending order are given below\n");
for (o = 0; o < m; ++o)
printf("%d\n", num[o]);
break;
case 3: // FOR OPTION 3 PART IM LOST ON MAKE A1 AND B1 SUM
{
sum = num[o] + number[i];
}
printf("Sum = %d\n", sum);
return 0;
}
}
答案 0 :(得分:2)
2个矩阵的和必须生成第三个矩阵。 您的代码必须类似于:
int sum[10];
int bigTotal;
...
case 3:
for(i = 0, bigTotal = 0; i < 10; i++){
sum[i] = num[i] + number[i];
bigTotal += sum[i];
printf("s[%d] = %d\n", i, s[i]);
}
printf("Sum of all numbers: %d\n", bigTotal);
break;
答案 1 :(得分:0)
如果我没记错,您尝试将A1中的元素与B1中的元素相加,并将sum(A1)+ sum(B1)的相加存储到名为sum的变量中。
由于元素存在于数组中,因此必须使用for循环,因此将情况3的代码更改为:
endAt
在这里打印您的总和(关闭循环后)
,如果您要添加数组的连续元素,则必须有第三个数组,该数组将存储连续元素的总和
for(i=0;i<n;i++){
sum=sum+num[i]+number[i];
}
之后,使用for循环打印元素
希望这会对您有所帮助。