Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/76: Рейтинг темы: голосов - 76, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 9

Строки. Нужно дополнить строку нулями слева

14.01.2014, 21:28. Показов 16470. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно дополнить строку нулями слева.
Например была строка str1[10]="345" результат str2[10]="0000000345"
Нужно именно в С++.
Спасибо!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.01.2014, 21:28
Ответы с готовыми решениями:

Вывести время двумя цифрами (однозначные числа дополнить слева нулями)
вывод этой программы такой 12:1:40 при вводимой переменной 129700 а надо Correct output: 12:01:40 как я должен сделать чтобы вывело...

Дополнить числа нулями слева до 9 разрядов
Здравствуйте подскажите пожалуйста как вывести перед номером нули. например задача такая человек вводит номер паспорта девяти значный номер...

Отобразить на форме числовое поле с нулями слева (ведущими нулями)
у меня есть поле "номер штрих-кода читателя". Это поля такого вида: 00000001. Следующий читатель будет с номером: 00000002. Если...

10
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
14.01.2014, 21:32
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <string>
 
int main()
{
  std::string str1("345");
  std::string str2;
  str2="000000"+str1;
  std::cout<<str2<<std::endl;
  return 0;
}
1
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 9
14.01.2014, 21:35  [ТС]
Мне нужно считать слово и дополнить его до розмера 100 нулями слева, простите что не так сформулировал задание.
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
14.01.2014, 21:41
SupremePedro,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include"stdafx.h"
#include <iostream>
#include<string>
 
 
int main()
{
    std::string str,str2;
    std::cin >> str;
    int temp = 100 - str.size();
    while (str2.size() != temp)
        str2 += "0" ;
    std::cout << str2 + str;
    system("pause");
    return 0;
}
1
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 9
14.01.2014, 21:44  [ТС]
Если не использовать string а рассматривать как массив символов?
0
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
14.01.2014, 21:54
Так идея та же самая.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
 
int main()
{
    std::string str1;
    std::cin>>str1;
    std::string str2;
    for(int i=0;i<100-str1.length();i++) str2="0"+str2;
    str2=str2+str1;
    std::cout<<str2<<std::endl;
    getchar();
    return 0;
}
0
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 9
14.01.2014, 22:00  [ТС]
Без string пожалуйста.
0
5500 / 4895 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
14.01.2014, 22:16
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <cstring>
using namespace std;
 
int main()
{
    char str[101];
    char temp[50];
    cin >> temp;
    int n = 100 - strlen(temp);
    
    int i = 0;
    for ( ; i < n; ++i)
        str[i] = '0';
    
    strcpy(&str[i], temp);
    
    cout << str << endl;
    
    system ("pause");
}
2
 Аватар для HighPredator
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
14.01.2014, 22:16
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <cstring>
 
int main()
{
    char str1[101];
    gets(str1);
    char str2[101]="0";
    for(int i=0;i<99-strlen(str1);i++) strcat(str2,"0");
    strcat(str2,str1);
    puts(str2);
    getchar();
    return 0;
}
1
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
14.01.2014, 22:20
SupremePedro,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include<string.h>
#include<cstring>
 
 
int main()
{
    char str[101];
    std::cin.getline(str,sizeof(str));
    int temp = 99 - strlen(str);
    char str2[101]; 
    str2[0] = '\0';
    std::cout<<"\n"<<strlen(str2);
    while (strlen(str2) != temp)
        strcat(str2, "0");
    strcat(str2, str);
    std::cout<<str2;
    system("pause");
    return 0;
1
0 / 0 / 0
Регистрация: 14.01.2014
Сообщений: 9
14.01.2014, 22:42  [ТС]
Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.01.2014, 22:42
Помогаю со студенческими работами здесь

Дополнить строку до 40 символов пробелами в конце строки
Ввести две отдельных строки, содержащие по меньшей мере по 4 слова. Дополнить вторую строку до 40 символов пробелами в конце строки.

Если длина строки больше 10 - оставить первые 6 символов, иначе дополнить строку символами 'о'
Дана строка.Если ее длина больше 10,то оставить в строке только первые 6 символов,иначедополнить строку символами 'о' до длины 12.

Дополнить нулями двоичное число
Нужно в открытом текстовом файле в строке n заменить область двоичным числом, причем после запятой должно быть обязательно два знака...

Сформировать новую строку следующим образом: каждое слово исходной строки записать слева направо
Дана строка. Сформировать новую строку следующим образом: каждое слово исходной строки записать слева направо. Помогите пожалуйста

Как дополнить один из элементов текстового массива нулями
Имеется строка А, где количество символов заранее неизвестно, может быть менее 56.25*4, а может быть и более этого значения. ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru