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

Нужно сложить некоторое количество строк.Подскажите пожалуйста! - C++

Восстановить пароль Регистрация
 
Akana
0 / 0 / 0
Регистрация: 08.12.2012
Сообщений: 29
15.12.2012, 12:57     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #1
Нужно выполнить сложение n-ого количества строк.
Вот мой код ,скажите что я делаю не так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <iomanip>
#include <stdlib.h>
#include <iostream> 
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
    const int N=100;
    char k[N];
    int n;
    char s=0;
    cout<<"Vvedite razmer massiva";
    cin>>n;
    for (int i=0;i<n;i++)
    { cin>>k[i];
    s+=k[i];  
    }
    cout<<s;
 
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2012, 12:57     Нужно сложить некоторое количество строк.Подскажите пожалуйста!
Посмотрите здесь:

C++ Выяснить, можно ли одну из строк сложить, переставляя символы другой
подскажите как подсчитать количество строк в файле C++
Подсчитать количество пучтых строк и количество строк,которые начинаются и оканчиваются на одну и ту же букву. C++
C++ Вводится некоторое количество чисел. ввод кончается 0. оставить только повторяющиеся числа
Считать несколько строк из файла зная их количество и сложить числа в каждой строке C++
C++ Подскажите пожалуйста, изменение строк в векторе
Пожалуйста, подскажите, что нужно для работы с TPoint? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Fler
208 / 210 / 9
Регистрация: 20.12.2011
Сообщений: 635
15.12.2012, 13:08     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #2
тип char это просто один символ
если Вам нужно каждую новую строку дописать в конец старой, то используйте функцию strcat
первым параметром передавайте строку, в которой будет сумма, вторым параметром то, что необходимо прибавить
Akana
0 / 0 / 0
Регистрация: 08.12.2012
Сообщений: 29
15.12.2012, 13:12  [ТС]     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #3
В этом и проблема, нужно сложить строки не используя стандартных функций для строк.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
5557 / 3036 / 339
Регистрация: 29.11.2010
Сообщений: 8,197
15.12.2012, 13:17     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <stdio.h>
#include <malloc.h>
#include <string.h>
 
 
int main()
{
    char **strings, *str;
    int i, n, k = 0;
    
    printf("Enter number of strings: ");
    scanf("%d", &n);
    
    strings = (char**)calloc (n, sizeof(char *));
    for (i=0; i < n; i++)
    {
        printf("Enter %d string: ", i+1);
        strings[i] = (char*)calloc (30, sizeof(char));
        scanf("%s", strings[i]);
        k += strlen(strings[i]) + 1;
    }
    str = (char*)calloc (k, sizeof(char));
    k = 0;
    for (i=0; i < n; i++)
    {
        strcpy(&str[k], strings[i]);
        k += strlen(strings[i]);
        str[k++] = ' ';
        free(strings[i]);
    }
    printf("%s\n", str);
    
    
    free(strings);
    free(str);   
    return 0;
}
Добавлено через 57 секунд
Akana, а вы разделом кстати не ошиблись? cin, cout, iomanip...
Fler
208 / 210 / 9
Регистрация: 20.12.2011
Сообщений: 635
15.12.2012, 13:22     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
 
using namespace std;
 
int main()
{
    const int N = 100;
    char S[N][N];
    int n[N], k, size = 0, j = 0;
    char *result;
    cout << "Razmer massiva: "; cin >> k;
    for(int i = 0; i != k; i++)
    {
        fflush(stdin);
        cin.getline(S[i], N);
        n[i] = strlen(S[i]);
        size += n[i];
    }
    result = new char[size + 1];
    
    for(int i = 0; i != k; i++)
    {
        for(int ii = 0; ii != n[i]; ii++, j++)
            result[j] = S[i][ii];
    }
    result[size] = '\0';
    cout << result << endl;
    system("pause");
    return 0;
}
бредово, но как-то так
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
5557 / 3036 / 339
Регистрация: 29.11.2010
Сообщений: 8,197
15.12.2012, 13:25     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #6
Если уж на С++, то хотя бы так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <string>
#include <iostream>
 
 
int main()
{
    std::string str, tmp;
    std::size_t n;
    std::cout << "Enter number of strings: ";
    std::cin >> n;
    for (std::size_t i=0; i < n && std::cin >> tmp; i++)
    {
        str += tmp;
        str += ' ';
    }
    std::cout << str;
}
Fler, память не освобождаете.
Akana
0 / 0 / 0
Регистрация: 08.12.2012
Сообщений: 29
16.12.2012, 23:44  [ТС]     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #7
Цитата Сообщение от MrGluck Посмотреть сообщение
Akana, а вы разделом кстати не ошиблись? cin, cout, iomanip...
Не думаю мы пишем программы на visual_studio_2010_ultimate вроде смеси С и С++.
Всем большое спасибо за помощью,правда код пока не проверяла ,так как на стационарном компьютере нет программы...
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
5557 / 3036 / 339
Регистрация: 29.11.2010
Сообщений: 8,197
16.12.2012, 23:53     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #8
Akana, не мешайте синтаксис двух языков, они хоть и кажутся одинаковыми, совершенно разные по своей сути. Мы же не говорим "Hello. Ich bin Данила." Плюс к ошибкам может привести нежелательным (например если комбинировать различные стили выделения и освобождения памяти).
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2012, 21:28     Нужно сложить некоторое количество строк.Подскажите пожалуйста!
Еще ссылки по теме:

Есть n-значное число нужно сложить сложить все его цифры C++
C++ Подскажите пожалуйста что нужно исправлять
Сложить модули элементов строк матрицы и сформировать из них вектор V C++
C++ Нужно сложить 2 числа в строке
C++ Увеличить матрицу на некоторое количество элементов

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

Или воспользуйтесь поиском по форуму:
Akana
0 / 0 / 0
Регистрация: 08.12.2012
Сообщений: 29
17.12.2012, 21:28  [ТС]     Нужно сложить некоторое количество строк.Подскажите пожалуйста! #9
Цитата Сообщение от MrGluck Посмотреть сообщение
Akana, не мешайте синтаксис двух языков, они хоть и кажутся одинаковыми, совершенно разные по своей сути. Мы же не говорим "Hello. Ich bin Данила." Плюс к ошибкам может привести нежелательным (например если комбинировать различные стили выделения и освобождения памяти).
Я делаю лишь,то чему нас учат на занятиях...
Yandex
Объявления
17.12.2012, 21:28     Нужно сложить некоторое количество строк.Подскажите пожалуйста!
Ответ Создать тему
Опции темы

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