C 反向打印数组,然后添加它

C 反向打印数组,然后添加它,c,arrays,sorting,C,Arrays,Sorting,嘿,伙计们,你们能帮帮我吗?这是我第一次处理数组,我已经厌倦了试图解决这个问题 任务是: 我有3个数组,我必须先按顺序打印它们,然后使用包含for循环的void函数按相反顺序打印它们 代码是: #include <stdio.h> void print_array(int numbers[], int length) { //insert code here } void print_array_reversed(int numbers[], int length) {

嘿,伙计们,你们能帮帮我吗?这是我第一次处理数组,我已经厌倦了试图解决这个问题 任务是:

我有3个数组,我必须先按顺序打印它们,然后使用包含for循环的void函数按相反顺序打印它们

代码是:

#include <stdio.h>
void print_array(int numbers[], int length)
{
    //insert code here
}
void print_array_reversed(int numbers[], int length)
{
    //insert code here
}

int main( int argc, char* argv[])
{
    int data_array_1 = ( 1, 3, 5, 7, 9, 11};
    int data_array_2 = ( 2, -4, 6, -8, 10, -12, 14, -16};
    int data_array_3 = ( 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 ,0};

    print_array(data_array_1, 6);
    print_array_reversed(data_array_1, 6);  

    print_array(data_array_2, 8);
    print_array_reversed(data_array_2, 8);

    print_array(data_array_3, 11);
    print_array_reversed(data_array_3, 11);

    return 0;
}
#包括
无效打印数组(整数[],整数长度)
{
//在这里插入代码
}
无效打印\u数组\u反转(整数[],整数长度)
{
//在这里插入代码
}
int main(int argc,char*argv[])
{
int data_array_1=(1,3,5,7,9,11};
int data_数组_2=(2,-4,6,-8,10,-12,14,-16};
int data_array_3=(10,9,8,7,6,5,4,3,2,1,0};
打印数组(数据数组1,6);
打印_数组_反转(数据_数组_1,6);
打印数组(数据数组2,8);
打印阵列反转(数据阵列2,8);
打印数组(数据数组3,11);
打印阵列反转(数据阵列3,11);
返回0;
}
请帮助我,伙计们,我真的很难做到这一点,我没有把任何东西放在插入代码部分,因为我提出的任何东西都没有任何意义


注意:这不是作业,我正在练习一些示例问题,以帮助我理解数组。但是,请帮助我,因为我的进度显然遇到了障碍。

完全回答只是在做其他人的作业,但是

很明显你迷路了,所以让我们一起来解决这个问题,如何处理你所拥有的一些明显的问题,让你朝着正确的方向前进

这必须改变:

int data_array_1 = ( 1, 3, 5, 7, 9, 11};
致:

现在,实际上已经有了一个数组

对其他类似事件重复。注意第三个,它是一个重复的名称。您可能指的是数据\u数组\u 3

这些更改将使您转到可编译的示例

让我们回顾一下这一事实,让我们从这里开始:

鉴于:

void print_array(int numbers[], int length)
作为函数签名,函数编号[2]中的第三个int是数组中的第三个int(从零开始)。如果长度为6,则最后一个有效条目是编号[5]。可以从5向后索引到0

让我们看看这将如何推动您前进。

检查示例代码。(按顺序和相反顺序打印)

我想,从中你会知道如何处理数组和for循环。继续练习

#include <stdio.h>


void print_array(int numbers[], int length)
{
 printf("In order\n");
for (int i = 0; i < length; i ++)
    printf("%d ",numbers[i]);
printf("\n");

}
void print_array_reversed(int numbers[], int length)
{
 printf("Reverse order\n");
for(int i = length-1; i >=0; i --)
    printf("%d ",numbers[i]);
printf("\n");

}

 int main( int argc, char* argv[])
{
int data_array_1[] = { 1, 3, 5, 7, 9, 11};
int data_array_2[] = { 2, -4, 6, -8, 10, -12, 14, -16};
int data_array_3[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 ,0};

 print_array(data_array_1, 6);
 print_array_reversed(data_array_1, 6);

 print_array(data_array_2, 8);
 print_array_reversed(data_array_2, 8);

 print_array(data_array_3, 11);
 print_array_reversed(data_array_3, 11);

 return 0;
 }
#包括
无效打印数组(整数[],整数长度)
{
printf(“按顺序\n”);
for(int i=0;i=0;i--)
printf(“%d”,数字[i]);
printf(“\n”);
}
int main(int argc,char*argv[])
{
int data_array_1[]={1,3,5,7,9,11};
int data_数组_2[]={2,-4,6,-8,10,-12,14,-16};
int data_array_3[]={10,9,8,7,6,5,4,3,2,1,0};
打印数组(数据数组1,6);
打印_数组_反转(数据_数组_1,6);
打印数组(数据数组2,8);
打印阵列反转(数据阵列2,8);
打印数组(数据数组3,11);
打印阵列反转(数据阵列3,11);
返回0;
}

如果您添加了一些关于您尝试过的内容的信息,可能会对这个问题更有帮助。否则,您只是要求提供解决方案。您的代码甚至可以编译吗?您没有3个数组,在赋值时有3个int变量和3个语法错误
(…}),请不要在C++中用C标记回答问题。检查,那更好。奇怪的缩进,但这当然更具修饰性。@ Davidweston OK,所以我试过了,我得到了输出,但是反向部分有一个额外的零点,也就是说,我可以在代码中得到逗号吗?比如,1, 3, 5,7, 9, 11。(11后面没有逗号的地方)。看看printf是如何工作的,还有条件语句(if)。这些东西会让你有所了解。@Mohammad。L@Davidweston谢谢你,大卫,非常感谢你的帮助,非常感谢。:t这不是我的家庭作业,我只是想在练习中解决这些问题。
#include <stdio.h>


void print_array(int numbers[], int length)
{
 printf("In order\n");
for (int i = 0; i < length; i ++)
    printf("%d ",numbers[i]);
printf("\n");

}
void print_array_reversed(int numbers[], int length)
{
 printf("Reverse order\n");
for(int i = length-1; i >=0; i --)
    printf("%d ",numbers[i]);
printf("\n");

}

 int main( int argc, char* argv[])
{
int data_array_1[] = { 1, 3, 5, 7, 9, 11};
int data_array_2[] = { 2, -4, 6, -8, 10, -12, 14, -16};
int data_array_3[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 ,0};

 print_array(data_array_1, 6);
 print_array_reversed(data_array_1, 6);

 print_array(data_array_2, 8);
 print_array_reversed(data_array_2, 8);

 print_array(data_array_3, 11);
 print_array_reversed(data_array_3, 11);

 return 0;
 }