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

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

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.05.2011, 17:12   #1
ZVER500
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию Не работает прога на С++

Здравствуйте !
Помогите решить проблему с прогой она почему то не хочет запускаться на с++ !
Как только прога начнет работать сразу открываться окно отладки о ошибке (и поиск решений)!
Вот текст проги:
Помогите очень нужно для курсача срочно!!! Заранее спасибо !

Код:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void main()
{
char* str;
int k=1,m,kk=0,n;
str=(char*)malloc(n*sizeof(char));

printf("Vedit stroku >>> \n");
for(int i=1;str[i-1]!='\n';i++)
{
str[i]=getchar();
if(str[i]==' ')
{
k++;
m=i;
}
}
for(i=m+1;str[i]!='\n';i++)
if(str[i]=='a') kk++;

printf("\n  Kilkist slov v stroki>> %d",k);
printf("\n  Kilkist bukv <a> v ostannyamu slovi >> %d\n",kk);

getch();
}
Вот скрин самой проблемы:

Последний раз редактировалось ZVER500; 11.05.2011 в 17:38.
ZVER500 вне форума Ответить с цитированием
Старый 11.05.2011, 17:52   #2
Psionic
Пользователь
 
Регистрация: 29.11.2008
Сообщений: 23
По умолчанию

Сама студия вылетает? Ну ставь другую - и кирилицу в имени проэкта не используй, почемуто компилятор такого не любит.
Зделать как надо, и зделать так чтобы получить нужный результат - это разные вещи
Psionic вне форума Ответить с цитированием
Старый 11.05.2011, 17:55   #3
ZVER500
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Psionic Посмотреть сообщение
Сама студия вылетает?
Студия работает нормально, ето только на етой проге !! Всё остальное работает нормально !
ZVER500 вне форума Ответить с цитированием
Старый 11.05.2011, 18:25   #4
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

- У вас переменная n не инициализирована.
- В последнем for'e, у счётчика i, не указан тип.
8Observer8 вне форума Ответить с цитированием
Старый 11.05.2011, 18:31   #5
Psionic
Пользователь
 
Регистрация: 29.11.2008
Сообщений: 23
По умолчанию

В коде только одна ошибка, С++ не умеет задавать значения по умолчанию , сравни - это вроде дышит.
Код:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void main()
{
char* str;
int k=1,m=0,kk=0,n=0; //вот здесь я правил
str=(char*)malloc(n*sizeof(char));

printf("Vedit stroku >>> \n");
for(int i=1;str[i-1]!='\n';i++)
{
str[i]=getchar();
if(str[i]==' ')
{
k++;
m=i;
}
}
for(int i=m+1;str[i]!='\n';i++)
if(str[i]=='a') kk++;

printf("\n  Kilkist slov v stroki>> %d",k);
printf("\n  Kilkist bukv <a> v ostannyamu slovi >> %d\n",kk);

getch();
}
Зделать как надо, и зделать так чтобы получить нужный результат - это разные вещи
Psionic вне форума Ответить с цитированием
Старый 11.05.2011, 20:59   #6
ZVER500
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию

Да спасибо вроди пашет !
Для себя я немного по другом сделал... Типа:
Код:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void main(void)
{
long* str;
int k=1,m,kk=0,n;
str=(long*)malloc(n*sizeof(long));
printf("Vedit stroku >>> \n");
for(int i=1;str[i-1]!='\n';i++)
{
str[i]=getchar();
if(str[i]==' ')
{
k++;
m=i;
}
}
for(i=m+1;str[i]!='\n';i++)
if(str[i]=='a') kk++;

printf("\n  Kilkist slov v stroki >> %d",k);
printf("\n  Kilkist bukv <a> v ostannyamu slovi >> %d\n",kk);

getch();
}

И ищо хотел спросить может кто то знает ета прога щи тает количество слов в строке, но есть одна проблема.
Короче когда набираешь строку и между словами делаешь один пробел то слова оно правильно считает, а когда делаешь два больше пробелов то считает уже не то.

Подскажите как ето возможно поправить !???
ZVER500 вне форума Ответить с цитированием
Старый 11.05.2011, 21:12   #7
Spawn™Production®
Форумчанин
 
Аватар для Spawn™Production®
 
Регистрация: 06.05.2011
Сообщений: 287
По умолчанию

Самое простое - запоминать, что есть пробел и ждать другого символа, а потом только итерировать переменную k, так как пробел в начале или конце строки, кстати, тоже не означает, что в строке слов больше.
Ну или после ввода строчки удалить все множественные пробелы...
Spawn™Production® вне форума Ответить с цитированием
Старый 11.05.2011, 21:45   #8
ZVER500
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию

А если ван не трудно можно хоч пример накинуть что бы посмотреть ??
ZVER500 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не работает прога. Lunex.08 Qt и кроссплатформенное программирование С/С++ 8 08.01.2011 20:58
Не работает прога Draips Помощь студентам 0 26.12.2010 12:33
Прога не работает MAZADA Помощь студентам 6 04.10.2010 13:51
прога работает но с недочетом 1mposs1ble Общие вопросы C/C++ 6 25.03.2010 12:16
Прога не работает RockForr Общие вопросы Delphi 5 18.05.2009 16:56