c语言指针如何输出整个数组
输出数组
①下标法
#include
void main()
{
int a[10];
int i;
for (i = 0; i<10; i++)
scanf("%d", &a[i]);
for (i = 0; i<10; i++)
printf("%d\n", a[i]);
printf("\n");
}
②由数组名计算地址
#include
void main()
{
int a[10];
int i;
for (i = 0; i<10; i++)
scanf("%d", &a[i]);
printf("\n");
for (i = 0; i<10; i++)
printf("%d\n", *(a + i));
printf("\n");
}
③用指针变量指向数组元素
#include
void main()
{
int a[10];
int i, *p;
for (i = 0; i<10; i++)
scanf("%d", &a[i]);
printf("\n");
for (p = a; p
printf("%d", *p);
printf("\n");
}
要输出整个数组,可以使用指针来遍历数组的每个元素并逐个输出。首先,定义一个指向数组的指针,然后使用循环结构(如for循环)来遍历数组。
在循环中,通过递增指针的方式来访问数组的每个元素,并使用printf函数将元素的值输出到屏幕上。
循环将一直执行,直到遍历完整个数组。这样就可以输出整个数组的内容。
C语言数组的输入输出函数
1、函数arrDisp中,for循环之中,不能定义变量,变量应该在函数开头声明。
2、变量j未定义
3、在main函数调用arrDisp函数时,一般是以数组名传递参数。
4、在arrDisp函数中,for循环下的printf函数,应该调用数组a[j]的元素做为输出。
代码如下:
#include <stdio.h>
void arrDisp(int a[], int n)
{
int j;
for(j=0;j<n;j++)
{
printf("%d",a[j]);
if(j%8==0)
printf("\n");
}
}
void main()
{
int n,i;
int a[100];
printf("要输入数的个数为:");
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
arrDisp(a, n);
}
补充在VC中编译时,编译器提示#include "stdafx.h" 时多余的。
如果你在ToburC2.0 编译还会出现变量定义的位置错误;
因为C语言要求变量的定义必须在代码块开头定义,for(int j=0;j<n;j++)中放入int j=0,没有在代码块开头。
还没有评论,来说两句吧...