Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [C] Задача на обработку символов


Автор: kasir 3.11.2006, 00:13
Даны натуральное число n, символы s1 , ... , sn
Подсчитать:
а) сколько раз среди данных символов встречается символ + и сколько раз символ *;
б) общее число вхождений символов +, -, * в последовательность S1, ..., Sn.

Автор: SPrograMMer 3.11.2006, 00:21
Код

int n=10;
char[n] s; // или char s[n]; //забыл :(

// тута должен располагаться ввод данных
int count_1=0, count_2=0, count_3=0;
// решаем первую часть:
for (int i=0; i<n; i++)
{
 if (s[i]='+') count_1++;
 if (s[i]='*') count_2++;
}

// что-то вроде:
printf("символов + ",count_1);
printf("символов * ",count_2);

// теперь вторую:
for (i=0; i<n; i++)
 if (s[i]='-') count_3++;

int common_count=count_1+count_2+count_3;

printf("общее число символов +, -, и * ", common_count);


ЗЗЫ: Сы совсем сабыл...  smile 

Автор: Mcicool 3.11.2006, 01:31
Вернее наверно так инициализировать 
Код

char s[10];


P.S. а как хадаются члены массива? Их надо из файла читать, или пользователся вручную вводит?

Автор: Oleg_Ci 3.11.2006, 17:12
 smile 
Код

#include <stdio.h>

int main(int argc, char *argv[])
{ 
    char str[1000];
    int i, a[255]={0};
    gets( str );
    for( i=0; str[i]; i++ ) a[str[i]]++;
    printf("\n+\t%d\n", a['+'] );
    printf("*\t%d\n", a['*'] );
    printf("- + *\t%d\n", a['-'] + a['*'] + a['+']);
    getchar();
    return 0;


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