论坛首页 综合技术论坛

关于数组的简单C程序的错误

浏览 2335 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-02-25  

代码如下

[code]

#include <stdio.h></stdio.h>
array01()    /*接受输入的一个字符,并计算此字符到小写a的距离,作为输出数组元素的第一维参数*/
{
int i=0;
char c;
c=getchar();
i=c-97;
return i;
}

array02()    /*接受输入作为输出数组元素的第二维参数*/
{
int i=0;
scanf("%d",&i);
return i;
}


inputth()       /*显示数组元素*/
{
int wowmat[3][3]={{1,2,3},{4,5,6},{7,8,9}};
int mat1,mat2;
mat1=array01();
mat2=array02();
printf("%d\n",wowmat[mat1][mat2]);
}

main()
{

int i=0;
for(i=0;i<3;i++)
{
inputth();     /*显示3次*/
}
}

[/code]

本意是想做个程序储存魔兽世界的密码保护卡,以防止丢失。魔兽世界密码保护卡是一个8×10的矩阵,a,b,c,d,e,f,g,h8列,1-10行,每次登录游戏的时候从这个矩阵中随机输入3个位置的数字作为随机密码。array01()函数将输入的第一维下标(字符a-h)转换成0-8的数字,以方便到存储密码保护卡信息的数组中读取相应的元素。

现在的问题是,经过跟踪调试,第一轮执行完全正常,第二轮开始就跳过了array01()函数,直接执行array02()函数,不知何故~

   发表时间:2007-02-25  
抱歉。。发错地方了。请版主删除或者移动掉。
多谢2楼的解答~
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics