C 在数组中,如何检查其任意两个内容编号的总和是否达到某个值x?
可以使用什么命令来检查数组中任意两个数字的总和是否等于某个x值。以下解决方案应该对您有所帮助:C 在数组中,如何检查其任意两个内容编号的总和是否达到某个值x?,c,arrays,C,Arrays,可以使用什么命令来检查数组中任意两个数字的总和是否等于某个x值。以下解决方案应该对您有所帮助: int TestArray (int array[], int count, int targetSum) { int i,j; for (i=0; i<count-1; i++) { for (j=i+1; j<count; j++) { if (array[i] + array[j] == targetS
int TestArray (int array[], int count, int targetSum)
{
int i,j;
for (i=0; i<count-1; i++)
{
for (j=i+1; j<count; j++)
{
if (array[i] + array[j] == targetSum)
{
return 1;
}
}
}
return 0;
}
输出为:
真的
假的
根据你的例子 初学者练习
int arr[3] = {1,2,3}; //array has 3 numbers
int i,j,x,k;
int res = 0;
scanf("%d",&x);
for(i=0; i< size; i++){
j = i+1;
if(j >= size){
j = 0;
}
k = arr[i] + arr[j];
if(k == x){
res = 1;
break;
}
}
if(res == 1)
printf("True\n");
else
printf("false\n");
int-arr[3]={1,2,3}//数组有3个数字
int i,j,x,k;
int res=0;
scanf(“%d”和&x);
对于(i=0;i=尺寸){
j=0;
}
k=arr[i]+arr[j];
如果(k==x){
res=1;
打破
}
}
如果(res==1)
printf(“True\n”);
其他的
printf(“假”);
这个怎么样:
int i;
int j;
int x;
int [size] TheArray;
printf("Enter value of x: ");
scanf("%d", &x);
for(i = 0; i < size; i++)
{
for(j = 0; j < size; j++)
{
if(TheArray[j]+TheArray[i] == x)
{
printf("true");
break;
}
else printf("false");
}
}
inti;
int j;
int x;
整数[大小]数组;
printf(“输入x的值:”);
scanf(“%d”和&x);
对于(i=0;i
您需要在代码中包含数组,他是问题的主要参与者。您的代码中没有任何数组。您可以编写
j=size
而不是for(i=0;i
。有关您编写的代码问题的问题必须在问题本身中描述具体问题,并包括重现问题的有效代码。请参阅以获取指导。@user3015922,y+z==x
?好的-这很容易修复-我已经更新了上面的代码,改为使用数组表示法通过。如果这是不允许的,只需将代码移到main<代码>整数[大小]数组代码>?仅当目标和为奇数时才保证有效。如果目标是4,而数组是{2,0,0},那么代码在第一个循环中会达到true,因为它会向自身添加相同的索引值。
int i;
int j;
int x;
int [size] TheArray;
printf("Enter value of x: ");
scanf("%d", &x);
for(i = 0; i < size; i++)
{
for(j = 0; j < size; j++)
{
if(TheArray[j]+TheArray[i] == x)
{
printf("true");
break;
}
else printf("false");
}
}