生成一个二维数组后要怎样才能对每一个元素进行处理?
发布网友
发布时间:2022-04-23 18:23
我来回答
共2个回答
热心网友
时间:2023-10-12 19:43
回过头来竟然不能完善自己的答案...
你那显示的是调试信息吧。呵呵
c,d和a,b很古怪。我的编译器运行会发生内存读错误,还有试过定义一个包含N个元素的数组,引用第N+1个也会发该种错误,不知道是不是问题所在...
热心网友
时间:2023-10-12 19:43
//简化了你的代码觉得二维数组没问题
#include<stdio.h>
#define AllNumVertex 10
int main()
{
int a,b;
float **verdis;
verdis = new float *[AllNumVertex];
for(int i=0;i<AllNumVertex;++i)
verdis[i] = new float[AllNumVertex];
/*************对数组赋值并输出成功**********************/
for( a=0;a<AllNumVertex;a++)
{
for( b=0;b<AllNumVertex;b++)
{
verdis[a][b]=float(a*2+b*3);
}
}
for( a=0;a<AllNumVertex;a++)
{
for( b=0;b<AllNumVertex;b++)
printf(" %f",verdis[a][b]);
}
/******************************************************/
float e,f,dissta[100]={0};int g; //dissta[100]={0}
i=0;
/************引用数组元素*****************************/
for(a=0;a<AllNumVertex;a++)
for(b=0;b<AllNumVertex;b++)
{
e=verdis[a][b];
f=e/5;
g=(int)f;
if(g!=100)
dissta[g]=dissta[g]+1;
}
printf("\n");
for(i=0;i<100;i++)
{
printf("%f ",dissta[i]);
}
return 0;
}
最令人头疼的就是分析代码片段了。。。这两句不知道意思
verdis[108][188];
maxdis;
关于二维数组,可以研究研究这篇博文http://www.cnblogs.com/irvinow/archive/2009/02/21/1395340.html
追问就是用的这篇博客。才发现是自己参数写错了
追答恩.解决了就好,多交流~