Написать функцию, которая выводит строку, состоящую из одинаковых символов - C (СИ)
Формулировка задачи:
Написать функцию, которая выводит строку, состоящую из одинаковых символов. Длина строки и символ являются параметрами процедуры.
вот мой код на Си
правильно ли он написан? мне говорят что я условие не так поняла... объясните пожалуйста или поправьте программу
#include <conio.h>
#include <stdio.h>
char *f(char s[], int d)
{
int i;
for (i=1; i<d+1; i++)
printf ("%s", s);
return s;
}
int main (void)
{
char s[]={'\o'};
int d;
scanf ("%s %d", &s, &d);
printf ("%d", f(s,d));
getch();
return 0;
}Решение задачи: «Написать функцию, которая выводит строку, состоящую из одинаковых символов»
textual
Листинг программы
#include "conio.h"
#include <stdio.h>
void print_line(char symbol, int count)
{
int i = 0;
for ( ; i < count; i++)
{
printf ("%c", symbol);
}
printf ("\n");
}
int main(void)
{
char symbol;
int count;
scanf ("%c %d", &symbol, &count);
print_line( symbol, count);
getch();
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с консолью и стандартным вводом/выводом
- Определение функции print_line, которая принимает два аргумента: символ и количество повторяющихся символов
- В функции print_line инициализируется счётчик повторяющихся символов i = 0
- С помощью цикла for происходит вывод заданного количества символов
- Выводимый символ задаётся параметром symbol, а значение счётчика — переменной count
- После вывода всех символов, функция завершается и вызывается функция printf для вывода символа новой строки (\n)
- В функции main происходит считывание символа и количества с помощью функции scanf
- Вызывается функция print_line с переданными аргументами
- Программа ожидает нажатия клавиши с помощью функции getch
- Программа завершается и возвращает 0, что означает успешное выполнение