Форум программистов, компьютерный форум CyberForum.ru

Преобразовать строку так, чтобы все буквы в ней были отсортированы по возрастанию - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Входной поток http://www.cyberforum.ru/cpp-beginners/thread311322.html
Здравствуйте. Задание: Вывести все слова входного потока в порядке увеличения их длины Уточню что задание нужно на борланд си . Желательно сделать это так: задать 2 массива в один из которых будет записываться слово а во второй количество букв в слове после чего создать цикл на нахождения минимального количества букв затем по количеству букв выводить слова . Также нашел на форуме тему с...
C++ ООП виртуальные функции ЗАДАНИЕ: Создать абстрактный базовый класс Pair с виртуальными арифметическими операциями. Создать производные классы Money и Complex. Класс Money для работы с денежными суммами. Число должно быть представлено двумя полями: типа long для рублей и типа unsigned char — для копеек. Реализовать сложение, вычитание, умножение на дробное число. Комплексное число представляются парой действительных... http://www.cyberforum.ru/cpp-beginners/thread311320.html
Процедура обмена столбца и строки двухмерного массива C++
Написать процедуру обмена столбца и строки двухмерного массива. С ее помощью поменять местами те строки и столбцы, первые элементы которых совпадают
C++ Движение фигур!
#include "iostream" #include "windows.h" #include "math.h" #include "time.h" #include "iomanip" #include "cmath" #include "cstdlib" #include "ctime" #include "conio.h"
C++ вычислить функцию http://www.cyberforum.ru/cpp-beginners/thread311316.html
Для х изменяющегося от a до b с шагом (b-a)/k, где (k=10), вычислить функцию f(x), используя ее разложение в степенной ряд в случаи, для заданной точности Е (Е=0.0001); у=сos(x), 0,1<x<1
C++ графика на с++ для чего служат g_driver,g_mode,g_error; прошу пояснить эти строки: initgraph(&g_driver,&g_mode,"C:\\BORLANDC\\BGI"); g_error=graphresult(); подробнее

Показать сообщение отдельно
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
02.06.2011, 23:47     Преобразовать строку так, чтобы все буквы в ней были отсортированы по возрастанию
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
 
int cmp(const void * a, const void * b){
  return ( *(char*)a - *(char*)b );
}
 
int main(){
  char  s[BUFSIZ] = "sdfnm   qwuqw  bfs ytwy  sdfh",
      tmp[BUFSIZ] = {'\0'}, *t = tmp, *p = s;
  for(; *p; ++p)
    if(isalpha(*p)) *t++ = *p;
  qsort(tmp, strlen(tmp), sizeof(char), cmp);
  for(p = s, t = tmp; *p; ++p)
    if(isalpha(*p)) *p = *t++;
  puts(s);
  return 0;
}
 
Текущее время: 08:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru