我计划一个接受用户输入(4个整数)的函数并检查每个整数是否大于1且小于6,我想要一些简单的东西,并且认为如果函数& #39;的 getche() ' (我想使用此特定功能,因为我不希望用户在输入后输入'输入键)可以在一个代码中获得四个整数
我想避免这种情况(如果可能的话):
int num1 = 0, num2 = 0, num3 = 0, num4 = 0;
num1 = getche();
num2 = getche(); ...
我在想是否有可能这样的事情:
int num = 0;
num = getche(4)
感谢。
答案 0 :(得分:1)
你不能使用具有适当条件和getch()函数的循环吗?它可能会变得更容易。
int l = 0;
while (l < 4)
{
x = getch();
// your conditions
}
答案 1 :(得分:0)
使用do / while循环来获取仅接受1到6的数字。使用while循环将四个数字连接成一个整数。
#include <stdio.h>
#include <stdlib.h>
//#include <conio.h>
int main(void)
{
int num = 0;
int digit = 0;
int each = 0;
printf("Type a four digit number using only 1 through 6\n");
while ( each < 4) {
do {
digit = getchar ( );
//digit = getch ( );//getch does not echo the typed character
if ( digit == EOF) {
fprintf ( stderr, "EOF\n");
return 1;
}
} while ( digit < '1' || digit > '6');//loop if character is NOT 1 to 6
//putch ( digit);//echo the character
each++;
num *= 10;
num += digit - '0';
}
printf("the number is %d\n", num);
return 0;
}