Dracula4ever
09.06.2006, 21:06
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int checkNum(char *strNum)
{
int clean=0,len=strlen(strNum);
while(*strNum!='\0')
{
if( ((*strNum) =='0') || ((*strNum) =='1') || ((*strNum) =='2') ||
((*strNum) =='3') || ((*strNum) =='4') || ((*strNum) =='5') ||
((*strNum) =='6') || ((*strNum) =='7') || ((*strNum) =='8') ||
((*strNum) =='9') )
clean++;
++strNum;
}
if(clean==len)
return 0;
return 1;
}
int checkOption(char *input,char *valid,int nDigitOptions,int uplim,int lowlim)
{
int choice=0;
if(strlen(input)>nDigitOptions)
{
// printf("valid is now %c\n",*valid);
//printf("gotta ya!\n");
*valid='F';
}
else
{
if(!checkNum(input))
{
choice=atoi(input);
if( (choice>=lowlim) && (choice<=uplim) )
*valid='T';
else
//printf("gotta ya!!\n");
}
else
{
//printf("gotta ya!!!\n");
*valid='F';
}
}
retrn choice;
}
int main(void)
{
char input[100],validInput='F';
int choice=0,nDigitOptions=1;
printf("input : %d\nvalid : %d\n",input,&validInput);
printf("Enter an option :\n1)play\n2)hack\n3)destroy\n4)exit\n");
gets(input);
choice=checkOption(input,&validInput,nDigitOptions,4,1);
if((validInput=='T'))
printf("alright!\n");
system("pause");
return 0;
}
Что у меня не то?
Где моя ошибка?
#include <stdlib.h>
#include <string.h>
int checkNum(char *strNum)
{
int clean=0,len=strlen(strNum);
while(*strNum!='\0')
{
if( ((*strNum) =='0') || ((*strNum) =='1') || ((*strNum) =='2') ||
((*strNum) =='3') || ((*strNum) =='4') || ((*strNum) =='5') ||
((*strNum) =='6') || ((*strNum) =='7') || ((*strNum) =='8') ||
((*strNum) =='9') )
clean++;
++strNum;
}
if(clean==len)
return 0;
return 1;
}
int checkOption(char *input,char *valid,int nDigitOptions,int uplim,int lowlim)
{
int choice=0;
if(strlen(input)>nDigitOptions)
{
// printf("valid is now %c\n",*valid);
//printf("gotta ya!\n");
*valid='F';
}
else
{
if(!checkNum(input))
{
choice=atoi(input);
if( (choice>=lowlim) && (choice<=uplim) )
*valid='T';
else
//printf("gotta ya!!\n");
}
else
{
//printf("gotta ya!!!\n");
*valid='F';
}
}
retrn choice;
}
int main(void)
{
char input[100],validInput='F';
int choice=0,nDigitOptions=1;
printf("input : %d\nvalid : %d\n",input,&validInput);
printf("Enter an option :\n1)play\n2)hack\n3)destroy\n4)exit\n");
gets(input);
choice=checkOption(input,&validInput,nDigitOptions,4,1);
if((validInput=='T'))
printf("alright!\n");
system("pause");
return 0;
}
Что у меня не то?
Где моя ошибка?