arrays - 为什么只有输出的第一个元素是错误的?
问题描述
我最近开始练习 C。除了第一个元素外,输出是相反的。谁能告诉我这里有什么问题?我也尝试过使用 for 循环,但那是按原样显示数组。
#include<stdio.h>
#include<conio.h>
int main()
{
int temp;
int i,n;
printf("Enter value of n:");
scanf("%d",&n);
int array1[n];
int k=0,j=n;
printf("Enter the five numbers\n");
for(i=0;i<n;i++)
{
printf("Enter the number %d:",i+1);
scanf("%d",&array1[i]);
}
printf("The array is:\n");
for(i=0;i<n;i++)
{
printf("%d ",array1[i]);
}
while(k<j)
{
temp=array1[k];
array1[k]=array1[j];
array1[j]=temp;
j--;
k++;
}
printf("\nThe array after reversing is:\n");
for(i=0;i<n;i++)
{
printf("%d ",array1[i]);
}
}
解决方案
您正在分配array1[k]
给array1[j]
并初始化j
为n
,因此它在第一次迭代中将值array1[k]
与=> 交换,值= ,但是最终元素的索引是。(索引为 0,1,2,3,4,...n-1)。所以它试图获取位置 n 的值,实际上没有存储值(它在数组之外)。更改为_array1[j]
j
n
n-1
j
n-1
int k=0,j=n;
推荐阅读
- pandas - 如何检查一个数据框列中的值是否包含在另一整列中?
- java - 将 JSON 数据从 JQUERY 传递到 java 控制器时出现异常
- reactjs - Typescript & React:在组件之间传递道具与默认道具
- python - AttributeError:“NoneType”对象没有带有 BeautifulSoup4 的属性“组”
- json - JSON分组列表视图格式
- nginx - 如何在 nginx 上仅在没有查询参数的情况下进行重定向?
- mysql - 将数据从本地数据库加载到 Big Query
- javascript - ReferenceError: Javascript 中未定义 firebase
- python - Python:两个一维向量之间的scipy/numpy所有对计算
- getstream-io - 如何离开聊天频道?