一个关于C的菜鸟问题,还请各位多多指教!:)
本人是一个VC的初学者,想对两个结构体变量分别赋值为0至25,A至Z
但是,运行一看却是另外一个结果,百思不得其解,还请高手多多指教。
程序和运行结果如下(Windows2000+VC6):
#include<stdio.h>
main()
{
int i;
struct lx
{
int a;
char b;
};
struct lx c[25],d[25];
for (i=0;i<26;i++)
{
c[i].a=i;
d[i].a=i;
c[i].b='a'+i;
d[i].b='a'+i;
}
for (i=0;i<26;i++)
{
printf("%d ",c[i].a);
}
printf("\n");
for (i=0;i<26;i++)
{
printf("%d ",d[i].a);
}
printf("\n");
for (i=0;i<26;i++)
{
printf("%c ",c[i].b);
}
printf("\n");
for (i=0;i<26;i++)
{
printf("%c ",d[i].b);
}
printf("\n");
}
这里是运行结果:
25 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
z b c d e f g h i j k l m n o p q r s t u v w x y z
a b c d e f g h i j k l m n o p q r s t u v w x y z
请注意:结果第一行的第一个数为“25”,结果第三行的第一个字母为“z“。
其它还算正常。
小弟我先行谢过。
E-mail:apple_sir@x263.net