如何使用箭头键和Enter按钮选择数字

时间:2014-04-12 10:21:19

标签: c

我有一个包含1到40号的电路板。如何选择或选择电路板上的数字。使用C编程语言

3 个答案:

答案 0 :(得分:2)

可能的方法可能是:

  • 创建一些具有初始状态的“board”表示
然后:
  1. 从输入中读取单个字符
  2. 根据输入确定操作
  3. 改变董事会的状态
  4. 输出反映其状态的整板
  5. 重复
  6. ...并且作为步骤2的一部分,如果已按下 Enter ,请停止此循环并显示有关所选数字或应该发生的任何事情的信息。

答案 1 :(得分:1)

其实我觉得我理解你的问题,首先你要知道键盘上的每个键都会以数字表示。

1)您是否知道ASCII码概念???。'A''a''1'等字符在ASCII CODE中表示,有关详细信息,请参阅ASCII表。

'A'将为65和

'B'将是66和

'C'将是67 ..........等等

因此,当您在键盘上按'A'时,它将在程序中存储为65。

让我们了解一些代码: -

#include<stdio.h>
int main()
{
    char ch1='\0';
    printf("\nPlease Enter any key from keyboard:");
    ch1=getche(); 
    printf("\nValue of that key is : %d",ch1);  

return 0;
}

以上代码的输出: -

请输入键盘上的任意键: A

该密钥的值为: 65

请输入键盘上的任意键: B

该密钥的值为: 66

请输入键盘上的任意键: C

该密钥的值为: 67

现在您可以使用上面的代码来了解您的箭头键或键盘上的任何其他键的实际值。我相信键盘上的箭头键的值对于每台机器(计算机)都不相同。因此,您必须知道要使用的每个密钥的特定值。

知道了箭头的值后,为你准备了一块蛋糕。

现在让我们看看机器上箭头键的值是多少,使用相同的代码: -

int main()
{
  int ch1='\0';
  int ch2='\0';
  printf("\nPlease Enter Key from keyboard:");
  ch1=getche(); //unwanted number.
  ch2=getche();// Actual wanted number.
  printf("\nUnwanted Value is : %d",ch1);
  printf("\nValue of that key is : %d",ch2);
 return 0;
}

如您所见,我修改了代码,因为在我的计算机上按箭头键或del键或主页键或结束或pageUp或PageDown键时,这些键会抛出两个数字< / strong>,所以我使用两个变量来捕获这两个值。

上述代码的输出为: -

请从键盘输入密钥:(此处已按下此处)

不需要的价值是:224

该密钥的值为:72

请从键盘输入密钥:(此处已按下)

不需要的价值是:224

该密钥的值为:80

请从键盘输入密钥:(此处已按此处)

不需要的价值是:224

该密钥的值为:75

请从键盘输入密钥:(此处已按下左侧)

不需要的价值是:224

该密钥的值为:77

你必须忽略第一个变量i,e 224的值。因为它只是一些数字但第二个变量的值很重要,它是从键盘按下的键的实际值。 现在从上面输出我的值 {上,下,右,左} = {72,80,75,77}

在知道箭头键的值后,我可以做我想做的事情: -

if(ch2==72)// when UP key pressed 
    //do something
else if(ch2==80) //when DOWN key pressed 
    //do something
else if(ch2==75)//when RIGHT key pressed 
    //do something.
else if(ch2==77)//when LEFT key pressed 
    //do something.

答案 2 :(得分:0)

您所描述的内容可以用C中的二维数组表示。尝试:

arr[40][40];

然后您可以遍历矩阵,因为您希望找到任一维度的第六个数字。但是,如果您没有更多信息或代码,我将无法提供更多帮助。