Я пытаюсь написать программу, которая читает строку от пользователя и печатает символы строки в диагональном шаблоне. Я устанавливаю максимальную длину строки как 50 символов. Программа может печатать символы в диагональном шаблоне, но не корректно печатает символы.Как напечатать символы строки в диагональном шаблоне?
#include<stdio.h>
int main() {
int i = 0, j = 0, m;
char c[50];
printf("Enter a string: ");
scanf("%c", c);
m = sizeof(c)/sizeof(c[0]);
for (i = 1; i <= m; i++) {
for (j = 1; j <= i; j++) {
if (j == i) {
printf("%c", c[i-1]);
} else {
printf(" ");
}
}
printf("\n");
}
return 0;
}
Почему нельзя использовать 'STRLEN()' и напечатать в диагональном формате печати новой строки после того, как символ печатается и не печатать инкрементных пространств – Gopi
'м = sizeof (c)/sizeof (c [0]); это избыточно, вы уже запрограммировали длину (50). – Maroun
'scanf ("% c ", c);' вводит только один символ. – BLUEPIXY