Появляется в переменной text перед символами символ \n - C (СИ)
Формулировка задачи:
Если код такой, то проблем нет
Если появляется эта строка, то появляется в переменной text перед символами символ \n
В этом месте
В чём дело и как убрать этот символ, подскажите.
// ConsoleApplication12.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "malloc.h" #include "stdio.h" #include "iomanip" #include "windows.h" int main() { setlocale(LC_ALL, "RU"); int gl = 5, m; int kolvo = 0; char glasnie[13] = "aeiouyAEIOUY"; char *text; text = (char*)malloc(sizeof(char)); int i = 0; while ((text[i] = getchar()) != '\n' && kolvo < gl) { i++; for (m = 0; m < 14; m++) { if (text[i] == glasnie[m]) { kolvo++; } } text = (char*)realloc(text, (i + 1)*sizeof(char)); } text[i] = '\0'; printf("Вы ввели текст:%s\n", text); system("pause"); return 0; }
scanf_s("%d", &gl);
// ConsoleApplication12.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "malloc.h" #include "stdio.h" #include "iomanip" #include "windows.h" int main() { setlocale(LC_ALL, "RU"); int gl = 5, m; int kolvo = 0; char glasnie[13] = "aeiouyAEIOUY"; char *text; text = (char*)malloc(sizeof(char)); int i = 0; scanf_s("%d", &gl); while ((text[i] = getchar()) != '\n' && kolvo < gl) { i++; for (m = 0; m < 14; m++) { if (text[i] == glasnie[m]) { kolvo++; } } text = (char*)realloc(text, (i + 1)*sizeof(char)); } text[i] = '\0'; printf("Вы ввели текст:%s\n", text); system("pause"); return 0; }
АП!
Решение задачи: «Появляется в переменной text перед символами символ \n»
textual
Листинг программы
scanf_s("%d", &gl); getchar(); while ((text[i] = getchar()) != '\n' && kolvo < gl)
Объяснение кода листинга программы
- Вводится число с помощью функции scanf_s в переменную gl.
- После ввода числа происходит считывание символа новой строки с помощью функции getchar.
- Затем начинается цикл while, который будет выполняться до тех пор, пока не будет прочитан символ новой строки и переменная kolvo меньше gl.
- Внутри цикла происходит считывание символа новой строки с помощью функции getchar и сохранение его в переменную text[i].
- После цикла while происходит выход из программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д