C
ChexoV
вот моё решение
С клавиатуры вводится некоторое число. Суть задачи состоит в перестановке элементов числа таким образом, чтобы сформировать максимальное число. К примеру, из 109 получить тока 910 а не 901.
Прогеры напишите пример сортировки букв в алфавитном порядке(желательно русских букв)
Входные данные:Строка(набор букв какой то)
Выходные данные:Строка,буквы которой расположены в алфавитном порядке....
С клавиатуры вводится некоторое число. Суть задачи состоит в перестановке элементов числа таким образом, чтобы сформировать максимальное число. К примеру, из 109 получить тока 910 а не 901.
Код:
#include "stdafx.h"
#include "string.h"
#include <stdio.h>
#include <stdlib.h>
#include "conio.h"
#include <locale.h>
#include <ctype.h>
int main()
{
setlocale(LC_CTYPE, ".1251");
char number[20];
int flag=0;
int i,j;
int length;
int mas[20];
char dopl[2];
printf("Введите число: ");
gets(number);//Взятие строки
length=strlen(number);//strlen определяет длину строки
for(i=0;number[i];i++)
{
if(isalpha(number[i]))//Проверка является хотя бы 1 символ буквой
flag=1;
}
if(flag==1)//если да то вывод сообщения
{
printf("Вводить надо число!");
getch();
return 0;
}
for(i=0;i<length;i++)
{
dopl[0]=number[i];//переписывет 1 символ строки в 1 ячейку дополнительного массива
nomer=atoi(dopl);//Преобразуем дополнительный массив в число
mas[i]=nomer;//Записывает в ячейку массива эту цифру
}
for(i=0;i<length-1;i++)//Сортировка
for(j=i+1;j<length;j++)
if(mas[i]<mas[j])
{
flag=mas[i];
mas[i]=mas[j];
mas[j]=flag;
}
printf("Результат: ");
for(i=0;i<length;i++)
printf("%d", mas[i]);
getch();
return 0;
}
Прогеры напишите пример сортировки букв в алфавитном порядке(желательно русских букв)
Входные данные:Строка(набор букв какой то)
Выходные данные:Строка,буквы которой расположены в алфавитном порядке....