C 如何将数组的最后一个元素设置为某个数字?

C 如何将数组的最后一个元素设置为某个数字?,c,C,假设我有一个数组,为5个元素设置值。如何使最后一个打印出来的文件为100 int n[5]; for(i=0; i<5; i++){ printf("Please enter value %d: \n",i+1); scanf(" %d", &n[i]); } intn[5]; 对于(i=0;i,您可以重写循环以不扫描数组中的最后一个元素,并在代码中用硬编码值100填充该值: int n[5]; n[4] = 100; for(i

假设我有一个数组,为5个元素设置值。如何使最后一个打印出来的文件为100

int n[5];
    for(i=0; i<5; i++){
        printf("Please enter value %d: \n",i+1);
        scanf(" %d", &n[i]);
    }
intn[5];

对于(i=0;i,您可以重写循环以不扫描数组中的最后一个元素,并在代码中用硬编码值100填充该值:

int n[5];
n[4] = 100;
for(i = 0; i < 4; i++)
{
    printf("Please enter value %d: \n",i+1);
    scanf(" %d", &n[i]);
}
intn[5];
n[4]=100;
对于(i=0;i<4;i++)
{
printf(“请输入值%d:\n”,i+1);
scanf(“%d”、&n[i]);
}

请注意,由于您的
for
循环不再向用户请求
n[4]
的值,因此无论行
n[4]=100;
是在循环之前还是之后。

通常,我会这样解决此问题:

#define ARRAY_SIZE 5

void myFunc()
{
  int n[ARRAY_SIZE];
  int i;
  for (i=0; i<ARRAY_SIZE-1; i++)
  {
    printf("Please enter value %d: \n",i+1);
    scanf(" %d", &n[i]);
  }
  // now, i == ARRAY_SIZE-1
  n[i] = 100;
}
#定义数组大小5
void myFunc()
{
int n[数组大小];
int i;

对于(i=0;i将循环条件设置为
i<4
,并手动将
n[4]=100;
设置在您的loop@GovindParmar在int n[5]下,我写n[4]=100;@GovindParmar不管怎样,你可以写下来作为答案,这样我就可以给你道具了?@danglingpointer这不是越界吗?@danglingpointer看起来是一个很好的射中你脚的方法。