Об игре
Новости
Войти
Регистрация
Рейтинг
Форум
9:04
3403
 online
Требуется авторизация
Вы не авторизованы
   Форумы-->Форум для внеигровых тем-->

Авторс++
Пользователь вводит с клавиатуры исходную строку, программа
должна записать в новую строку все символы которые встречаются
только один раз в исходной строке
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <stdlib.h>
using namespace std;
#define STR_LEN 50
int main() {
char src_str[STR_LEN];
char dst_str[STR_LEN];
cout<<"Enter the string\n>";
cin.get(src_str, STR_LEN-1);
char g;
char j;
int r;
int i=0;
int k=0;
int u=0;
for (i=0; i<STR_LEN-1;i++){
for(k=0;k<STR_LEN-1;k++){
if (src_str[i]==src_str[k]){
for(u=0; u<STR_LEN-1; u++){
dst_str[u]=src_str[i];
}

}
}
}
cout<<dst_str<<"\n";
cin>>r;
return 0;
}
что не так???
Надо спросить у программистов.
Надо спросить у программистов. Я тоже так думаю.
Спроси у программистов.
Да.
что не так
Надо спросить у программистов
Вроде все верно но выводит пустую строку
для Кантарез:
ну ты спроси у программистов,они объяснят.
scanf - не?
Не это потоковой ввод
при записи не встречающегося символа ты переписываешь каждый элемент новой строки.

for(u=0; u<STR_LEN-1; u++){
dst_str[u]=src_str[i];
}

тебе надо дописывать этот символ в конец результирующей строки и только один раз.

как вариант вместо куска кода вверху:

dst_str[u]=src_str[i];
u++
вместо cin>>r; логично использовать getch() библиотеки <conio>, те ожидание нажатия на клавишу. И выделяй память динамически!
К списку тем
2007-2025, онлайн игры HeroesWM