gpt4 book ai didi

挑战C编程

转载 作者:行者123 更新时间:2023-11-30 21:46:44 24 4
gpt4 key购买 nike

我应该怎样做才能使程序运行没有任何错误..

#include <stdio.h>


int i= 0;
while (i< SIZE){
j= i+1;
while (j<SIZE){
if (myList[i]+ myList [j] == target){
printf("%d AND %d\n", i, j);

}
j= j+1;
}
i=i+1;
}

为了编译并执行此代码,您必须将其键入编辑器。确保所有必需的变量都已适当声明。还要确保在执行这些 if-else 语句之前使用 scanf() 输入值。如果您多次运行编译器,它将帮助您识别必须声明的变量。

问题:编写一个 C 程序,读取 N=1000 个整数,i1, i2, …, iN。这些数字没有排序,您可能会假设这些整数也没有任何规则模式。读取这 N 个整数后,您的程序现在必须读入一个称为目标的新整数。从这 N 个整数中查找所有整数对 ij 和 ik,使得 ij + ik = Target。

最佳答案

嗯,我尝试了你的代码,并且它可以工作。我假设j可以等于k。如果它们不能相等,那么我已经指出了代码中要更改的部分(其中是 ij 而不是 jk )。这是固定代码

#include <stdio.h>
#define SIZE 10 // You can change SIZE here
int main()
{
int myList[SIZE],target;
printf("Enter 10 Numbers\n");
for(int k=0;k<SIZE;k++)
{
scanf("%d",&myList[k]);
}
printf("Enter the target\n");
scanf("%d",&target);
int i= 0,j;
while (i< SIZE)
{
j=i; // if i and j should not be equal just change it to j=i+1
while (j<SIZE)
{
if (myList[i]+ myList [j] == target)
{
printf("%d AND %d\n", i, j);
}
j= j+1;
}
i=i+1;
}
return 0;
}

在这段代码中,为了方便起见,我采用了 SIZE=10,因为我不想输入 1000 个数字。您可以随时将 SIZE 更改为 1000。

干杯......希望这是你想要的。

关于挑战C编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28576119/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com