Изменить располажение текста на экране - C (СИ)
Формулировка задачи:
У меня есть программа, которая выводит на экран содержимое файла!
Как я могу изменить располажение текста на экране?
Работает в консоли!
Добавлено через 12 минут 51 секунду
Могу я как-то здесь описать то, что мне нужно???
Добавлено через 11 минут 47 секунд
int txt2()
{
char s[800];
int i, count,n=0;
FILE *fin, *fout,*f;
gotoxy(12,65);
setfillstyle(SOLID_FILL,0);
bar(0,0,640,480);
setfillstyle(SOLID_FILL,RED);
rectangle(5,50,635,475);
fin = fopen("input.txt", "r");
fout = fopen("output.txt", "w");
while(fgets(s, sizeof(s), fin) != NULL) {
for(i = count = 0; s[i] != '\n' && s[i] != EOF; i++)
if(s[i] == ' ')
count++;
n++;
printf("%s", s);
fprintf(fout, " %d = %d\n",n, count);
}
fclose(fin);
fclose(fout);
getch();
return 0;
}bar(0,0,640,480); //это я нарисовала рамочку, setfillstyle(SOLID_FILL,RED); // в которой дожен быть rectangle(5,50,635,475); //расположен текст
Решение задачи: «Изменить располажение текста на экране»
textual
Листинг программы
while(fgets(s, sizeof(s), fin) != NULL) {
for(i = count = 0; s[i] != '\n' && s[i] != EOF; i++)
if(s[i] == ' ')
count++;
n++;
gotoxy(5, n+8); // вот так она и будет работать
printf("%s", s);
fprintf(fout, " %d = %d\n",n, count);
}
Объяснение кода листинга программы
- В цикле while считывается каждая строка из файла 'fin' с помощью функции fgets, до тех пор, пока не будет достигнут конец файла (EOF).
- В каждой строке ищется пробел с помощью цикла for и счетчика i. Пробелы считаются с помощью счетчика count.
- После каждой строки увеличивается счетчик n.
- С помощью функции gotoxy(5, n+8) позиция курсора перемещается на 5 строк вниз и на 8 символов вправо от левого нижнего угла экрана.
- С помощью функции printf выводится считанная строка.
- С помощью функции fprintf выводится значение переменных n и count, а также символ новой строки '\n'.
- Значения переменных n и count записываются в файл 'fout'.