Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Проверка на буквы


Автор: gPro 23.10.2014, 20:35
Помогите доделать программу, все есть осталось сделать проверку на букву при вводе размерности массива и при вводе его элементов, не понимаю я это дело..вот код 
Код

#include <stdio.h>
#include <conio.h>
 
main(){ 
    int m[100][100];
    int n, max, n_max, i, j, sum;
    
    printf ("vvedite n\n");
    scanf ("%d", &n );  
    printf ("vvedite matricu %i x %i  \n", n, n);
    for ( i = 0; i < n; i++){
        printf ("elementi  %i  stroki:\n",  i + 1);
        for ( j = 0; j < n; j++)
            scanf ("%i", &m[i][j] );
    }
        
    max = 1 << (sizeof(int) * 8 - 1);
    for ( i = 0; i < n; i++){
        sum = 0;
        for ( j = 0; j < n; j++)
            sum += m[i][j];
        if (sum > max){
            max = sum;
            n_max = i;
        }           
    }   
    printf (" \n  V %i  stroke summa elementov ",   n_max + 1);
    printf (" Maximal'na, i rovna' %i\n", max );
    getch ( ) ;
}

Автор: borisbn 24.10.2014, 00:20
Не очень понял вопрос, но, если потелепатировать, то тебе нужно определить, ввёл ли пользователь строку, в которой содержится корректное число или он просто ввёл набор символов, например "abcdxyz".
Если так, то ф-ция scanf возвращает число успешно считанных параметров. Так что код проверки сводится к следующему

Код
while ( true ) {
    printf ("vvedite n\n");
    if ( scanf ("%d", &n ) == 1 ) {
        break;
    }
    prnitf( "Ошибка ввода. Повторите.\n" );
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)