C 变量仅显示其最近的值

C 变量仅显示其最近的值,c,C,我需要学校给我的这个问题的帮助。这个问题是用塞尔维亚语写的,我会尽力翻译 编写一个程序,输入一维数组的n个元素,然后显示它们的序号、索引和值(参见测试示例) 测试示例也是用塞尔维亚语编写的,但我想你可以猜出你需要做什么。以下是我试图做的: #include <stdio.h> #include <stdlib.h> int main() { int n,i,clan,broj=0,b,a; a=1; printf("Unesi broj elem

我需要学校给我的这个问题的帮助。这个问题是用塞尔维亚语写的,我会尽力翻译

编写一个程序,输入一维数组的n个元素,然后显示它们的序号、索引和值(参见测试示例)

测试示例也是用塞尔维亚语编写的,但我想你可以猜出你需要做什么。以下是我试图做的:

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n,i,clan,broj=0,b,a;
    a=1;
    printf("Unesi broj elementa niza:\n");
    scanf("%d", &n);
    for (i=1;i<=n;i++)
    {
        printf("Unesi %d clan niza:\n", i);
        printf("a[%d]=", broj);
        broj++;
        scanf("%d", &clan);
    }
    for (b=1;b<=n;b++)
    {
        printf("%d. clan niza je a[%d]=%d\n", a, b, clan);
        a++;
    }
    return 0;
}
#包括
#包括
int main()
{
intn,i,clan,broj=0,b,a;
a=1;
printf(“Unesi broj elementa niza:\n”);
scanf(“%d”和“&n”);

对于(i=1;i您正在将所有值存储到同一个变量中,
clan
。当然,每个赋值都会覆盖上一个值-它是一个变量,而不是一个堆栈。
在循环中读取五次,每次都会得到最后一个值。

“…只有最后输入的数字会打印回我,我找不到解决方案…”

使用数组

变量
clan
一次不能包含多个
int
值,但是,数组变量
int clan[n];
最多可容纳
n
int
值。下面是您修改的代码,以使用

int main(无效)
{
int n,i,broj=0,b,a;//删除
a=1;
printf(“Unesi broj elementa niza:\n”);
如果(scanf(“%d”,&n)==1)//在此处测试是否成功,如果失败则退出
{
int clan[n];//使用用户输入值帮助创建clan数组

例如(i=0;i你永远不会得到这个问题的答案。“请为这个问题编写一个程序”请尝试描述你的问题/问题。我正在为上面的任务编写一个程序,但我遇到了一个问题,你看,在给定的示例中,此人必须输入一系列数字,直到它等于“n”然后,这些数字必须按顺序打印出来,如上图所示,但问题是,只有最后输入的数字才会打印出来,我找不到解决方法,我希望你现在明白发生了什么on@JoshuaSchlichting自从你发表评论以来,OP已经被编辑了两次。这当然取决于你,b如果你认为原职位的条件有所改善,你会考虑删除你的评论吗?非常感谢,这很好,你是一个救生员。
int main(void)
{
    int n,i,broj=0,b,a;//remove clan
    a=1;
    printf("Unesi broj elementa niza:\n");
    if(scanf("%d", &n) == 1)//test for success here, exit if fail
    {
        int clan[n];//use user input value to help create array of clan
        for (i=0;i<n;i++)//array index is from 0 to n-1
        {
            printf("Unesi %d clan niza:\n", i);
            printf("a[%d]=", broj);
            broj++;
            scanf("%d", &clan[i]);//modify to populate 1 element of clan array
        }
        for (b=0;b<n;b++)
        {
            printf("%d. clan niza je a[%d]=%d\n", a, b, clan[i]);//modify to oupput 1 element of clan array
            a++;
        }
    }
    else
    {
        printf("scanf() call failed.  Exiting.");
    }
    return 0;
}