Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
straus
0 / 0 / 0
Регистрация: 18.10.2010
Сообщений: 45
#1

функция strcmp - C++

25.10.2010, 12:58. Просмотров 1950. Ответов 6
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void h(anceta*a, int n){
     
      for( int i = 0; i<n; i--)
     for(int j = 0; j < i; j++)
       {
     strcmp(a[j].fam,a[j+1].fam);
     if(
        //  anceta t;
          //t = a[j+1];
          //a[j+1]=a[j];
         //a[j] = t;
          cout<<endl;
     }
 }
как она работает , она должна проверить все фамилии независимо от их количества
как правильно установить порядок ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2010, 12:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос функция strcmp (C++):

Функция strcmp - C++
Имеется три числа num1, num2 и det. Как используя функцию strcmp определить принадлежит ли число det, промежутку num1, num2?

Функция strcmp - C++
Скажите пожалуйста,по какой причине,если указатель b- это символ &quot;P&quot;, функция strcmp может возвращать не 0? ...

функция strcmp - C++
какое бы не было nazv_otdela всегда пишет равны как лечить? void predpri9tie::zad() { cout&lt;&lt;&quot;vvedite nugniy otdel&quot;&lt;&lt;endl; ...

Функция strcmp - C++
В каком файле посмотреть функцию strcmp? В string.h смотрел и там ничего не нашел. В string тоже нет. Точнее в string.h есть, но там...

Дружественная функция, аналог strcmp - C++
Есть класс Stroka, с двумя полями: str - сама строка и maxlen - длина строки(без учета нуль символа). Вот объявление: class Stroka {...

Что делает функция strcmp(s1,s2) ? - C++
Функция strcmp(s1,s2)…что она делает?

6
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
25.10.2010, 13:17 #2
C++
1
if(strcmp(a[j].fam ,a[j+1].fam ) == 0)  // значит строки равны
0
straus
0 / 0 / 0
Регистрация: 18.10.2010
Сообщений: 45
25.10.2010, 13:54  [ТС] #3
NikolaWhite, если равны то continue, а если не равны надо все сверять то как?
0
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
25.10.2010, 14:05 #4
если равны то continue, а если не равны надо все сверять то как?
Чтобы выйти из цикла не continue а break

чтобы дальше проверять инкрементируем j
0
straus
0 / 0 / 0
Регистрация: 18.10.2010
Сообщений: 45
25.10.2010, 18:24  [ТС] #5
C++
1
2
3
4
5
6
7
8
9
10
11
 void h(anceta*a, int n){
     
      for( int i = 0; i<n; i--)
     for(int j = 0; j < i; j++)
       {
     strcmp(a[j].fam,a[j+1].fam);
     if( strcmp(a[j].fam,a[j+1].fam)==0){break;}else{j++;}
        
          cout<<endl;
     }
 }
ну вот так ....
так он теперь вообще не работает
0
TheMachinist
244 / 176 / 15
Регистрация: 14.06.2010
Сообщений: 422
25.10.2010, 20:36 #6
C++
1
strcmp(a[j].fam,a[j+1].fam);
это лишнее
C++
1
else{j++;}
это тоже
0
straus
0 / 0 / 0
Регистрация: 18.10.2010
Сообщений: 45
25.10.2010, 20:51  [ТС] #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void h(anceta*a, int n){
     anceta m;
      for( int i = 0; i<n;i++){
     for(int j= 0; j< i; j++)
       {
    if( strcmp(a[j].fam,a[j+1].fam)>0)
    {anceta t;
          m = a[j+1];
          a[j+1]=a[j];
          a[j] = m;}
     if( strcmp(a[j].fam,a[j+1].fam)==0){break;}else{j++;}
        
          cout<<endl;
     }
 }
 }
если три анкеты ничего не сортирует, что то там сортирует
0
25.10.2010, 20:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.10.2010, 20:51
Привет! Вот еще темы с ответами:

Функция strcmp() отказывается сравнивать - C++
Доброго всем здравия, я взял небольшой фрагмент из программы. Поясните пожалуйста почему он не работает? #include &quot;stdafx.h&quot; #include...

Структура. Чтение файла. Функция strcmp - C++
Код программы. #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;string.h&gt; using namespace std; struct STADION{char *name;char...

Неправильно работает функция strcmp c русскими буквами - C++
Пытаюсь сравнить строку с литералом. void main() { setlocale(LC_ALL, &quot;Rus&quot;); string s1; cin &gt;&gt; s1; int k =...

Функция strcmp "was not declared in this scope" - C++
Написала программу, но выдает ошибку. Строка помечена комментарием. Помогите пожалуйста, не могу понять в чем ошиблась. Библиотеку...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru