вы слишком намудрили
1) номер столбца может быть больше 9 поэтому вводить и обрабатывать его как символ - лишнее
2) зачем таскать по всей программе символы еще и их регистр?
ввод берите как символ + число:
char input_row;
int col;
scanf("%c%d",&input_row,&col);
первый символ сразу же (и единожды) преобразуйте в число с учетом регистра (ваше base так устраняется)
int row;
row = tolower(input_row) - 'a' + 1; // для этой функции нужно подключить ctype.h. +1 чтобы как и для колонки нумеровать с 1 а не с 0
вот и все: у вас есть 2 числа - номер строки и столбца. далее можно работать с числами
ваша программа с учетом этого и выброса порождений дьявола выглядит так (обратите внимание. я поставила такие заголовки чтобы компилировалось у меня. у вас было #include "stdafx.h")
#include <stdio.h>
#include <ctype.h>
int main () {
char Arr [22][20]={{'d','g','a','F','f','e'},{'s','f','f','s','G','g','q','x'}};
int i=22, j=20;
char input_row;
int row, col;
printf ("Enter I&J \n");
scanf("%c%d",&input_row,&col);
row = tolower(input_row) - 'a' + 1;
if (row>0 && row <=i && col>0 && col<=j) {
printf("%c\n",Arr[row-1][col-1]);
} else {
printf ("ERRoR\n");
}
return(0);
}
с таким массивом как вы задали правильный ответ будет только для A1..6 и B1..8. все остальные элементы массива неинициализированы поэтому в пределах указанных значений индесков (22 и 20) будут выдавать мусор
Другие языки программирования и технологии
Найти ошибку в программе...
А тело программы усилием мысли получить?
Похожие вопросы
- Помогите, пожалуйста, с информатикой. 10 класс. Надо найти ошибку в программе. Язык паскаль
- помогите найти ошибка в программе на PASCAL тема: "файлы".
- найдите ошибку в программе
- Найдите ошибку в программе на языке с++.
- Помогите найти ошибку в программе. C++
- Помогите найти ошибки в программе!
- Помогите найти ошибку в программе С++
- Помогите найти ошибку в программе Паскаль!
- Всем добрый вечер) пожалуйста,помогите найти ошибку в программе-->
- Помогите найти ошибку в программе (паскаль)