Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
dimonkhr
1 / 1 / 1
Регистрация: 07.12.2013
Сообщений: 67
1

Определить, в какой строке больше цифр

07.12.2016, 16:08. Просмотров 338. Ответов 2
Метки нет (Все метки)

Посимвольно вводятся 2 строки длиной до 80 сиимволов
Определить, в какой строке больше цифр: в первой или во второй

Уже писал. Найдите ошибки, пожалуйста)
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
 
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
 
int main(int argc, char *argv[]) {
    setlocale(LC_ALL, "Rus");
    char gts=' ';
    int i, fst=0, sst=0, flg=0;
    printf("Введите первую строку (максимум - 79 символов:)\n");
    scanf("%c", &gts);
    while(gts!="\n")
    {
        flg=afer(gts);
        if(flg==1)
        {
            fst++;
        }
        scanf("%c", &gts);
    }
    printf("Введите вторую строку (максимум - 79 символов:)\n");
    scanf("%c", &gts);
    while(gts!="\n")
    {
        flg=afer(gts);
        if(flg==1)
        {
            fst++;
        }
        scanf("%c", &gts);
    }
    if(fst>sst)
    printf("В первой строке больше цифр");
    if(sst>fst)
    printf("Во второй строке больше цифр");
    if(sst==fst)
    printf("И в первой, и во второй строках одинаковой количество цифр");
    return 0;
}
 
int afer(char* __s)
{
    int k;
    if(__s=='0'||__s=='1'||__s=='2'||__s=='3'||__s=='4'||__s=='5'||__s=='6'||__s=='7'||__s=='8'||__s=='9')
    {
        k=1;
    }
    return(k);
}
Почему то после того, как я нажму Enter (\n), программа не выходит из цикла :-(
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2016, 16:08
Ответы с готовыми решениями:

Определить, в какой строке больше цифр: в первой или во второй
Даны две строки длиной до 80 символов. Определить, в какой строке больше...

Определить, в какой строке матрицы находится больше всего нулей
Нужно показать двухмерный массив А, который состоит из елементов 0 и 1, и...

Определить, в каком из чисел больше цифр
Даны 2 натуральных числа найти в каком из них больше цифр используя функцию...

Определить, в каком из заданных двух чисел больше цифр
Составить программу, определяющую, в каком из данных двух чисел больше цифр....

Определить, каких символов больше: цифр или букв
Помогите пожалуйста с кодом

2
andreyka93
128 / 128 / 157
Регистрация: 11.04.2015
Сообщений: 343
07.12.2016, 16:16 2
Одинарные кавычки попробуй,
C
1
while(gts!='\n')
1
dimonkhr
1 / 1 / 1
Регистрация: 07.12.2013
Сообщений: 67
07.12.2016, 16:21  [ТС] 3
Да, точно, спасибо, не заметил.
Какая-то проблема) Она в итоге выводит не правильное итоговое значение
в первую строку ввел 1 цифру, а во 2 - 3
Итог - в первой больше))

Добавлено через 58 секунд
Нашел ошибку. Итоговый правильный вариант:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
 
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
 
int main(int argc, char *argv[]) {
    setlocale(LC_ALL, "Rus");
    char gts=' ';
    int i, fst=0, sst=0, flg=0;
    printf("Введите первую строку (максимум - 79 символов:)\n");
    scanf("%c", &gts);
    while(gts!='\n')
    {
        flg=afer(gts);
        if(flg==1)
        {
            fst++;
        }
        scanf("%c", &gts);
    }
    printf("Введите вторую строку (максимум - 79 символов:)\n");
    scanf("%c", &gts);
    while(gts!='\n')
    {
        flg=afer(gts);
        if(flg==1)
        {
            sst++;
        }
        scanf("%c", &gts);
    }
    if(fst>sst)
    printf("В первой строке больше цифр");
    if(sst>fst)
    printf("Во второй строке больше цифр");
    if(sst==fst)
    printf("И в первой, и во второй строках одинаковой количество цифр");
    return 0;
}
 
int afer(char* __s)
{
    int k;
    if(__s=='0'||__s=='1'||__s=='2'||__s=='3'||__s=='4'||__s=='5'||__s=='6'||__s=='7'||__s=='8'||__s=='9')
    {
        k=1;
    }
    return(k);
}
Спасибо andreyka93 за помощь!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2016, 16:21

Определить, каких цифр в заданном числе больше: четных или нечетных
программа без использования массива на Си Дано натуральное число М....

Определить количество цифр в числе а, которые больше или равны числу 5
Здравствуйте,скоро вот сессия и я подумал надо бы подготовиться к экзамену,даже...

Определить, больше в строке гласных или согласных букв
Дана строка. Определить, больше в строке гласных или согласных букв. Код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru