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

Сортировка имен с помощью qsort; - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Массивы: Нужно получить все элементе большого массива, что не есть в меньшому. http://www.cyberforum.ru/cpp-beginners/thread569981.html
Есть два целочисленных массива, состоящих из m and n элементов. Нужно получить все элементе большого массива, что не есть в меньшому. Добавлено через 13 часов 20 минут что некто не знает?(
C++ Массив: количество элементов массива, равных 0 10. В одномерном массиве, состоящем из n вещественных элементов, вычислить: а) количество элементов массива, равных 0; b) сумму элементов массива, расположенных после минимального элемента. Тоже сделать по примеру Пример 3.3.Текст программы #include<iostream.h> #include<conio.h> http://www.cyberforum.ru/cpp-beginners/thread569975.html
Ребус C++
9. Составить алгоритм решения ребуса сыр + сыр = рыба (различные буквы обозначают различные цифры, старшая – не 0). Нужно сделать как в примере Пример * Составить алгоритм решения ребуса *буква + буква + буква * = слово (различные буквы обозначают различные цифры, старшая – не 0). * * * * * 3.2.Используемые переменные
C++ Создать двусвязный список и найти в нем максимум
прошу напишите пожалуйста прогу, которая создаст двусвязный список и найдёт в нем максимум
C++ Найти сумму квадратов элементов последовательности, стоящих на нечетных местах http://www.cyberforum.ru/cpp-beginners/thread569929.html
Найти сумму квадратов элементов последовательности, стоящих на нечетных местах А = {1,5; -5; -18,5; 100,5; 8,5; 0; 0; -81,5; 31; 0,5; -28,5}.
C++ Помогите найти ошибку Нужно написать программу на C: Дан файл f, компоненты которого являются целыми числами. Записать в файл g, компоненты файла f, исключив повторные вхождения чисел. Есть найденное решение, но оно с ошибкой. Не могу понять где. Ошибка заключается в том, что программа всегда один раз повторяет первое число из файла f в файле g. Помогите пожалуйста найти её. #include "stdafx.h" #include "time.h" ... подробнее

Показать сообщение отдельно
Salty_Sugar
 Аватар для Salty_Sugar
26 / 26 / 1
Регистрация: 02.04.2012
Сообщений: 140
10.05.2012, 10:25     Сортировка имен с помощью qsort;
Вот программа которую я нашел здесь:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <iostream>
using namespace std;

int cmp_func(const void *a, const void *b){
return strcmp(*(char**)a, *(char**)b);
}

#define MAX_LEN 128
int main(void)
{
setlocale(LC_ALL, "rus");
int num=5, i;
char **arr, buf[MAX_LEN], *p;

if ( ( arr = (char**) calloc(num, sizeof(char*)) ) == NULL ) exit(1);

for ( i = 0; i < num; ++i ){
if ( ! fgets(buf, MAX_LEN, stdin) ) exit(1);

if ( p = strrchr(buf, '\n') )
*p = '\0';
if ( ! *buf ) exit(1);

if ( ( arr[i] = strdup(buf) ) == NULL ) exit(1);
}

qsort(arr, num, sizeof(char*), cmp_func);

for ( i = 0; i < num; ++i )
printf("%s\n", arr[i]);

for ( i = 0; i < num; ++i )
free(arr[i]);
free(arr);

exit(0);
}

Вопрос: как сделать, чтобы переменная num вводилась с клавиатуры? Я пробовал просто scanf("%i",&num); Не помогло...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru