Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2012, 16:53   #11
IVT27
Пользователь
 
Регистрация: 11.11.2012
Сообщений: 14
По умолчанию

Извините, а что изменилось?) тот же код что и был)))
IVT27 вне форума Ответить с цитированием
Старый 29.11.2012, 16:57   #12
IVT27
Пользователь
 
Регистрация: 11.11.2012
Сообщений: 14
По умолчанию

Изините конечно, но чем различается новый код от старого?)
IVT27 вне форума Ответить с цитированием
Старый 29.11.2012, 21:27   #13
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Код:
// сортируем массив по фамилиям                  
             Student TempR;
Цитата:
Код:
// сортируем массив по фамилиям
             Student tempR;
посмотрите на имя переменной tempR (в дальнейшем использовалась именно она), а вот опредлять имя TempR (с большой буквы, а использовать tempR - вот компилятор и ругался.
Поймите в C названия идентификаторов (функций, переменных и все прочие) зависят от регистра. Допустим, переменные Basya, basya, BASya, BaSya, BASYA - это пять АБСОЛЮТНО разных переменных (которые между собой, с точки зрения компилятора - вообще ничего общего не имеют).
Учтите это на будущее!

p.s. я, как старый Паскалист, постоянно наступаю на эти грабельки..
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.11.2012, 03:53   #14
IVT27
Пользователь
 
Регистрация: 11.11.2012
Сообщений: 14
По умолчанию

Точно, и в правду это была маленькая помарочка, но когда я исправил, компилятор запустил без ошибок и выдал мне после вывода текста вот такую ошибку:
Unhandled exception at 0xcccccccc in Оп.exe: 0xC0000005: Access violation reading location 0xcccccccc. и я могу нажать Break, Continue.



А вот что говорит компилятор:
First-chance exception at 0x00411683 in Оп.exe: 0xC0000005: Access violation writing location 0x00130000.
First-chance exception at 0xcccccccc in Оп.exe: 0xC0000005: Access violation reading location 0xcccccccc.
First-chance exception at 0xcccccccc in Оп.exe: 0xC0000005: Access violation reading location 0xcccccccc.
...
IVT27 вне форума Ответить с цитированием
Старый 30.11.2012, 07:34   #15
IVT27
Пользователь
 
Регистрация: 11.11.2012
Сообщений: 14
По умолчанию

А при запуске программы выдает 16 фамилий и в случайной порядке.
IVT27 вне форума Ответить с цитированием
Старый 30.11.2012, 08:39   #16
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
А при запуске программы выдает 16 фамилий и в случайной порядке.
как он может выдавать 16????!
если Вы в коде пишете:
Код:
     Student a[4];

     for (int i=0;i<4;i++){
.....
      // вывести массив записей на экран
      for (int i=0;i<4;i++) 
....
Вы что-то исправили? И не очень удачно?
Это раз.

второе. я совсем не знаю С/С++, на форуме полно людей хорошо знающих этот язык. Я очень удивлён, что никто из них до сих пор не написал тут в тему. Вполне возможно, что в коде есть ошибка смешения типов или неверного обращения к элементам массива/структуры...

Но, в любом случае, для начала давайте полностью свой код. Тогда, хотя бы, будет видно, что Вы там изменили..
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.11.2012, 09:02   #17
IVT27
Пользователь
 
Регистрация: 11.11.2012
Сообщений: 14
По умолчанию

Код:
#include "conio.h"
#include <stdio.h>
#include "iostream" 
using namespace std;


struct Student { char FIO[30];                
				 int data;
				 int m[10];
};
void main()
{
	Student a[4];

for (int i=0;i<4;i++){
		cout<<"Vvedite FIO:"<<endl;
		cin>>a[i].FIO;
		cout<<"Vvedite data ropgdeniay:"<<endl;
		cin>>a[i].data;
	}

             // сортируем массив по фамилиям                  
             Student tempR;

             for (int i=0;i<3;i++) { 
                 for (int j=i+1;i<4;j++) { 
                       if (a[i].FIO< a[j].FIO) {
                         tempR = a[i];
                         a[i] = a[j];
                         a[j] = tempR; 
                       }
             

           // вывести массив записей на экран
           for (int i=0;i<4;i++) 
           {
               cout<<a[i].FIO<< " " << endl;
           }
				 }  
				 }
getch();
			 }
Пугает вот это: Unhandled exception at 0xcccccccc in Оп.exe: 0xC0000005: Access violation reading location 0xcccccccc. и я могу нажать Break, Continue.
Можно только приостановить работу. И я тоже очень удивлен, что никто ничего не написал. Я уже спрашивал знакомых, на что они говорили что очень легкое задане, но я повторюсь что примеры с упорядоченостью чисел,символов имеются и там более менее все понятно. Примеров с упорядоченностью в алфавитном порядке я не нашел и разбирая эту тему по найденным отрывкам в интернете, ничего не понял.
IVT27 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка по алфавиту. asmars Общие вопросы C/C++ 3 17.04.2012 00:42
Структуры. Упорядочить по алфавиту Gothika92 Помощь студентам 2 07.01.2011 17:29
Сортировка по алфавиту DimOn4Ik БД в Delphi 3 17.04.2010 06:48
Сортировка по алфавиту ЧИЖ Общие вопросы Delphi 1 16.03.2007 14:17