首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

如何输出的值感觉像地址啊

2013-01-01 
怎么输出的值感觉像地址啊!#include stdio.h#define M 6struct Node{int key}struct arry{Node a[M+1]

怎么输出的值感觉像地址啊!
#include <stdio.h>
#define M 6
struct Node
{
int key;
};
struct arry
{
Node a[M+1];
};
void create()
{
arry p;
p.a[1].key=1; p.a[2].key=3; p.a[3].key=5; p.a[4].key=2; p.a[5].key=12; p.a[6].key=6; 
}
void DubleBubble()
{
  int b=1;
  arry p;
  int temp;
  int i=0,j=0;
  while(b)
  {
  b=0;
  for(i=1;i<6;i++)
 if(p.a[i].key>p.a[i+1].key)
  {
 temp=p.a[i].key;
 p.a[i].key=p.a[i+1].key;
 p.a[i+1].key=temp;
  }
  for(j=6;j>1;j--)
if(p.a[j].key<p.a[j-1].key)
{
  temp=p.a[j].key;
  p.a[j].key=p.a[j-1].key;
      p.a[j-1].key=temp;
  b=j-2;
}
  }
}
void print()
{
int i=0;
arry p;
for(i=1;i<=6;i++)
printf("%d\t",p.a[i].key);          
printf("\n");
}
void main()
{
create();
DubleBubble();
print();
}
[解决办法]


#include <stdio.h>
#define M 6
struct Node
{
int key;
};
struct arry
{
struct Node a[M+1];
};
struct arry p;
void create()
{
p.a[1].key=1; p.a[2].key=3; p.a[3].key=5; p.a[4].key=2; p.a[5].key=12; p.a[6].key=6; 
}
void DubleBubble()
{
  int b=1;
  int temp;
  int i=0,j=0;
  while(b)
  {
  b=0;
  for(i=1;i<6;i++)
 if(p.a[i].key>p.a[i+1].key)
  {
 temp=p.a[i].key;
 p.a[i].key=p.a[i+1].key;
 p.a[i+1].key=temp;
  }
  for(j=6;j>1;j--)
if(p.a[j].key<p.a[j-1].key)
{
  temp=p.a[j].key;
  p.a[j].key=p.a[j-1].key;
      p.a[j-1].key=temp;
  b=j-2;
}
  }
}
void print()
{
int i=0;
for(i=1;i<=6;i++)
printf("%d\t",p.a[i].key);          
printf("\n");
}
void main()
{
create();
DubleBubble();
print();


[解决办法]
变量是否作用域的
还有,数组的索引是从0开始的

热点排行