cpp Code:
#include <stdio.h>
#include <stdlib.h>
char num_char(int i, int j){
switch(i){
case '1': switch(j){
case '1':
case '2':
case '3':
case '4': return ' ';
break;
}
break;
case '2': switch(j){
case '1': return 'a';
break;
case '2': return 'b';
break;
case '3': return 'c';
break;
}
break;
case '3': switch(j){
case '1': return 'd';
break;
case '2': return 'e';
break;
case '3': return 'f';
break;
}
break;
case '4': switch(j){
case '1': return 'g';
break;
case '2': return 'h';
break;
case '3': return 'i';
break;
}
break;
case '5': switch(j){
case '1': return 'j';
break;
case '2': return 'k';
break;
case '3': return 'l';
break;
}
break;
case '6': switch(j){
case '1': return 'm';
break;
case '2': return 'n';
break;
case '3': return 'o';
break;
}
break;
case '7': switch(j){
case '1': return 'p';
break;
case '2': return 'q';
break;
case '3': return 'r';
break;
case '4': return 's';
break;
}
break;
case '8': switch(j){
case '1': return 't';
break;
case '2': return 'u';
break;
case '3': return 'v';
break;
}
break;
case '9': switch(j){
case '1': return 'w';
break;
case '2': return 'x';
break;
case '3': return 'y';
break;
case '4': return 'z';
break;
}
break;
}
}
int main(void){
int a; char b[10]; int i, k;
printf("Vpisi kodo: "); scanf("%d", &a);
itoa(a,b,10);
for(k = 0; k < strlen(b); k++){
for(i = 0; i < 4; i++){
printf("%c", num_char(b[k], i+1));
}
printf("\n");
}
system("pause");
return 0;
}
This is the code I wrote so far. It should print 3 characters that correspond to each number but what it really does is print totally unwanted chars.
So if I input the number '34' it should print:
dg
dh
di
eg
eh
ei
fg
fh
fi
...or something like that... but it does not.
Does anyone know what's the problem?