Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.70/10: Рейтинг темы: голосов - 10, средняя оценка - 4.70
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
1

fprintf не переводит на новую строку

12.05.2012, 16:47. Просмотров 1912. Ответов 20
Метки нет (Все метки)

C++
1
fprintf(fz,"%7s|%7s|%7s|%7s|%7s|\n ",Ndv1,Kd1,Mvx1,Nk1,Urash1,Nper1);
не хочет переводить на новую строчку не могу понять почему
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2012, 16:47
Ответы с готовыми решениями:

Не переводит на новую строку!
#include <stdio.h> #include <string.h> int main() { char...

Функция переводит на новую строку
Наткнулся на функцию, которая отправляет сообщение пользователю с определенным...

Acstime переводит на новую строку
Добрый день. Хочу сделать void, который будет печатать цветной текст с...

Не переводит строку
printf("1\t2\t3\t4\t5\n1\t4\t9\t16\t25"); Почему?

Написать программу которая переводит строку в обратную сторону
написать программу которая переводит строку в обратную сторону при этом не...

20
grizlik78
Эксперт С++
1988 / 1480 / 192
Регистрация: 29.05.2011
Сообщений: 3,059
12.05.2012, 16:56 2
Файл как открыт?
0
Avazart
Эксперт С++
7723 / 5632 / 549
Регистрация: 10.12.2010
Сообщений: 25,402
Записей в блоге: 17
12.05.2012, 17:02 3
Ndv1,Kd1,Mvx1,Nk1,Urash1,Nper1 - 6-переменных
А %7s у тебя 5 шт
1
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
12.05.2012, 17:04 4
Ты передаешь 6 параметров, а должен передавать 5 !
1
Avazart
Эксперт С++
7723 / 5632 / 549
Регистрация: 10.12.2010
Сообщений: 25,402
Записей в блоге: 17
12.05.2012, 17:04 5
C++
1
fprintf(fz,"%7s|%7s|%7s|%7s|%7s|%7s|\n",Ndv1,Kd1,Mvx1,Nk1,Urash1,Nper1);
1
grizlik78
Эксперт С++
1988 / 1480 / 192
Регистрация: 29.05.2011
Сообщений: 3,059
12.05.2012, 17:04 6
Да, точно. Параметров больше, чем в шаблоне.
1
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
12.05.2012, 17:06  [ТС] 7
с этим разобрался есть другая проблема почему у меня
C++
1
fprintf(fz,"%f|%f|%f|%f|%f|%d|\n",Ndv,Kd,Mvx,Nk[i],Urash[i],Nperedaci[index[i]]);
выводиться Ndv 7 знаков после точки как можно их сделать меньше а то получаеться слишком много нулей
0
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
12.05.2012, 17:11 8
%A.Bf , где A - общее кол-во знаков включая точку, B - кол-во знаков после точки
или просто %.Bf , где B - кол-во знаков после точки
1
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
12.05.2012, 17:17  [ТС] 9
lazybiz, а как указать всю ширину что бы например это число занимало только 7 позиций и все не больше а то получаеться что таблица ломаеться
0
castaway
12.05.2012, 17:20
  #10

Не по теме:

не так

0
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
12.05.2012, 17:23  [ТС] 11
у меня такая вот ситуация некрасивая как выставить что бы не сбилось
вот такие два числа в таблице и сбиваються
100.00000|
50.00000|
вот оно сбилось как сделать что бы не сбивалось просто я же не могу предсказать какие будут числа надо что бы коректно таблица работала
0
Avazart
Эксперт С++
7723 / 5632 / 549
Регистрация: 10.12.2010
Сообщений: 25,402
Записей в блоге: 17
12.05.2012, 17:23 12
Я использовал бы iostream + iomanip
cout<<setw(5)<<var;
0
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
12.05.2012, 17:30  [ТС] 13
так мне в файл записывать надо

Добавлено через 1 минуту
есть вариант как преобразовать в строку и выводить в файл
0
Avazart
Эксперт С++
7723 / 5632 / 549
Регистрация: 10.12.2010
Сообщений: 25,402
Записей в блоге: 17
12.05.2012, 17:30 14
Тогда fstream + iomanip

А вообще
Спецификации полей формата начинаются с символа % и имеют вид:
%[flags][width][.precision][F|N|h|l|L]type
Архангельский "Справочная часть книги" стр 1057
0
castaway
Эксперт С++
4930 / 3037 / 453
Регистрация: 10.11.2010
Сообщений: 11,116
Записей в блоге: 10
Завершенные тесты: 1
12.05.2012, 17:31 15
Делай фиксированную ширину и фиксированное кол-во знаков после запятой, например всего 7 и два знака после запятой: %7.2f и все у тебя в таблице будет ровно.
1
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
12.05.2012, 17:37  [ТС] 16
все хорошо так и сделал вывелось красиво кроме последнего столбца там вот так вышло
10240.04|
8435.30|
0
Avazart
Эксперт С++
7723 / 5632 / 549
Регистрация: 10.12.2010
Сообщений: 25,402
Записей в блоге: 17
12.05.2012, 17:38 17
Делай фиксированную ширину и фиксированное кол-во знаков после запятой, например всего 7 и два знака после запятой: %7.2f и все у тебя в таблице будет ровно.
Не совсем [width] -Ширина поля — минимальное число выводимых символов (не максимальное!)
Как вариан попробывать использовать между полями '\t' -табуляцию.

Да еще открывай файл MSWord-ом, а не блокнотом ( блокнот неправильно отображает)
1
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
12.05.2012, 17:42  [ТС] 18
Avazart, табуляция помогла все красиво теперь
0
grizlik78
Эксперт С++
1988 / 1480 / 192
Регистрация: 29.05.2011
Сообщений: 3,059
12.05.2012, 17:47 19
Если диапазон чисел заранее неизвестен, то и табуляция может не помочь. Тогда стоит задуматься о научной нотации выводимых чисел. Спецификаторы %e или %g.
1
sergeu90
27 / 28 / 5
Регистрация: 17.10.2009
Сообщений: 739
12.05.2012, 17:50  [ТС] 20
grizlik78, я могу предпложить что числа не будут слишком большими тогда все хорошо
0
12.05.2012, 17:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2012, 17:50

Как считать строку scanf'ом при этом не переходя на новую строку, т.е. без использования Enter'а
Как считать строку scanf'ом при этом не переходя на новую строку, т.е. без...

Дана строка. Создать новую строку, все буквы которой входят в первую строку только один раз
Дана строка. Создать новую строку, все буквы которого входят в первую строку...

Заданы две строки. Построить новую строку, состоящую из символов, которые входят в первую строку, но не входят во вторую
Помогите решить пожалуйста задачу условия звучат так. Заданы две строки....


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

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

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