#c #format
Вопрос:
Я должен печатать цифры вот так
Задание «Первое число печатается с выравниванием по правому краю через 5 пробелов, затем печатается двоеточие, затем количество шагов записывается как число с выравниванием по левому краю через 5 пробелов»
Код, который у меня сейчас есть, печатает цифры примерно так
3:7 4:2 5:5 6:8 7:16 8:3 9:19 10:6
11:14 12:9 13:9 14:17 15:17 16:4 17:12
18:20 19:20 20:7
Это код для печати этой таблицы.
void makeTable(int start, int end) {
for(int i = 0; i<=end-start; i ) {
printf("]:%d", i start, hofpo(i start));
if(i>0 amp;amp; i % 7 == 0) {
printf("n");
}
}
printf("n");
}
Как напечатать цифры в нужном формате?
Комментарии:
1. С
-:%-3d"
добавлением соответствующего интервала между каждым набором из 6 символов. Или аналогично,-
форматы справа от поля с 2 пробелами,%-3d
форматы слева от поля с 3 пробелами. Пожалуйста, ознакомьтесь со спецификациями формата2. Также измените значение
if (i > 0 amp;amp; (i 1) % 7 == 0) printf("n");
на печать 7 столбцов в строке
Ответ №1:
Я подвел итоги комментариев для новичков:
#include <stdio.h>
#include <stdlib.h>
void makeTable (int, int);
int main (int argc, char * *argv, char * *envp) {
makeTable(5, 35);
return (EXIT_SUCCESS);
}
void makeTable(int start, int end) {
for(int i = 0; i<=end-start; i ) {
printf("-:%-3d", i start, i start-3);
if(i>0 amp;amp; (i 1) % 7 == 0) {
printf("n");
}
}
printf("n");
}