float (*a)[5]是定义了一个指向数组的指针,如果要把它当成二维数组的话,相当于列数为5,行数可以动态分配。如:
float (*a)[5];
int n = 2; //定义行数为2
a = new float[n][5];
int sum = 0;
for (int i=0; i
for (int j=0; j<5; j++)
{
sum = sum + a[i][j];
}
}
delete[] a;
对于你定义的这个数组,它表示有5个float*类型的指针,也就是说它定义了一个二维数组,这个数组有5行,这5行的首地址分别为a[0],a[1],a[2],a[3],a[4],但是没有给每一行具体分配空间,所以还不能说它有多少列,你要为每一行分配空间之后再赋值,然后才能计算行和
float f=0;
for(int n=0;n<5;n++)
{
if(a[n])
f=f+*a[n];
}
float (*a)[5]; 是说a为指向含5个元素的一位数组的指针变量。
求和:
#include
main()
{
int a[4] = {2,3,4,5};
int i,sn = 0;
for(i = 0;i < 4;i++)
{sn += a[i];}
printf("%d\n",sn);
}