Краткие теоретические сведения. &
2.НАЗОВИТЕ ОСНОВНЫЕ ЧАСТИ И ОХАРАКТЕРИЗУЙТЕ ПЕРЕДНЮЮ ПОДВЕСКУ ТРАКТОРА И ЗАДНЮЮ ПОДВЕСКУ АВТОМОБИЛЯ
3.НАЗОВИТЕ ОСНОВНЫЕ ЧАСТИ И ОХАРАКТЕРИЗУЙТЕ ЗАДНЮЮ ПОДВЕСКУ ТРЕХОСНОГО АВТОМОБИЛЯ
4. НАЗОВИТЕ ОСНОВНЫЕ ЧАСТИ И ОХАРАКТЕРИЗУЙТЕ ПЕРЕДНЮЮ ОСЬ АВТОМОБИЛЯ
5. НАЗОВИТЕ ОСНОВНЫЕ ЧАСТИ И ОХАРАКТЕРИЗУЙТЕ ПЕРЕДНИЕ МОСТЫ ТРАКТОРОВ С ЭЛАСТИЧНОЙ И ЖЕСТКОЙ ПОДВЕСКОЙ
6. НАЗОВИТЕ ОСНОВНЫЕ ЧАСТИ И ОХАРАКТЕРИЗУЙТЕ АМОРТИЗАТОР
7. НАЗОВИТЕ ОСНОВНЫЕ ЧАСТИ И ОХАРАКТЕРИЗУЙТЕ ПНЕВМАТИЧЕСКУЮ ПОДВЕСКУ МАШИН
8. НАЗОВИТЕ И ОХАРАКТЕРИЗУЙТЕ ОСНОВНЫЕ ЧАСТИ ДИСКОВЫХ И БЕЗДИСКОВЫХ КОЛЕС И УЗЛОВ ИХ КРЕПЛЕНИЯ
9. НАЗОВИТЕ И ОХАРАКТЕРИЗУЙТЕ ОСНОВНЫЕ ГЕОМЕТРИЧЕСКИЕ ПАРАМЕТРЫ И ЭЛЕМЕНТЫ КОНСТРУКЦИИ ШИНЫ
10. ОПИШИТЕ ДОСТОИНСТВА И НЕДОСТАТКИ ЗАВИСИМОЙ И НЕЗАВИСИМОЙ ПОДВЕСОК
11. ОХАРАКТЕРИЗУЙТЕ ПОДВЕСКУ ГРУЗОВОГО АВТОМОБИЛЯ
Краткие теоретические сведения Язык С++ не содержит стандартного типа данных «строка». Однако для обработки строк здесь имеется две возможности. В первом случае строки можно представить и обрабатывать как символьные массивы, завершаемые нуль-символом (‘\0’). Они позволяют достичь высокой эффективности, но небезопасны в использовании, поскольку выход за границы строки не проверяется. Второй метод подразумевает использование объектов типа string. Основные действия со строками выполняются в нём с помощью операций и методов, а длина строки изменяется динамически в соответствии с потребностями. Однако представление и обработка строк как объектов класса проигрывает массивам символов в эффективности. Для представления строки в виде массива символов используется следующая конструкция:
char имя_строки [количество символов]; или char *имя строки; char Str[100], *stroka;
Строки при описании можно инициализировать строковыми константами:
char mm[ ]=”массив символов”; char *text=”Program”;
При объявлении в программе строковой константы транслятор Си++ автоматически добавляет в конец строки NULL -символ (\0), поэтому длина строковой константы на 1 больше, чем количество символов в ней. Для строк, вводимых с клавиатуры, NULL -символ не размещается. Максимальная длина строки 256 символов. При вводе строк с клавиатуры можно использовать оператор cin, однако, при этом символы считываются до первого пробела. Поэтому для удобства ввода строк рекомендуется использовать специальные методы cin.getline(str,n) и cin.get(str,n). Данные функции имеют два параметра: str – имя строки, n – максимальное количество вводимых символов. Для работы со строками-массивами можно использовать специальные функции, описанные в заголовочном файле string.h
Пример 1: Ввести строку с клавиатуры. Заменить каждый третий символ на # и подсчитать число замен. #include<iostream.h> #include<string.h> #include<conio.h> main () { char *stroka; int z=0,i; clrscr(); cout<<” Введите строку:”; cin.getline (stroka, 100); for (i=0; i<strlen(stroka); i++) if (i%3==0) { *(stroka+i-1)=’#’; z++; } cout<<”\n Изменённая строка: ”<<stroka; cout<<”\n Число замен: ”<<z; }
Пример 2:Ввести строку с клавиатуры. Напечатать список повторяющихся русских букв во введённой строке. #include<iostream.h> #include<string.h> #include<conio.h> main () { char *text, alf []=”абвгдеёжзийклмнопрстуфхцчшщьъэюя”; clrscr(); cout<<” Введите строку:”; cin.getline (text, 100); cout<<”\n Список повторяющихся в тексте букв: ”; for (int i=0; i<strlen(alf); i++) { int povtor=0; for (int j=0; j<strlen(text); j++) if (alf[i]==text[j]) povtor++; if (povtor>1) cout<<alf[i]<<’\t’; } }
Пример 3:Записать все слова введённого с клавиатуры текста в строковый массив. Слова, начинающиеся с "ко" (без учёта строчных и прописных букв) переписать в новый строковый массив. #include<iostream.h> #include<conio.h> #include<string.h> main() { char s[100],mas[10][100]; clrscr(); int n,i=0,j=0; cout<<"\n Input stroka:"; cin.getline(s,100); for (n=0;n<strlen(s);n++) if (s[n]!=' ') {mas[i][j]=s[n]; j++;} else {mas[i][j]='\0';j=0;i++;} mas[i][j]='\0'; cout<<"\n Massiv:"; for(n=0;n<=i;n++) cout<<'\n'<<mas[n]; char **newmas=new char *[i+1]; for(n=0;n<i+1;n++) newmas[n]=new char [100]; cout<<"\n NEW Massiv:"; for (n=j=0;n<=i; n++) {strlwr (mas[n]); if (mas[n][0]=='k' && mas[n][1]=='o') {strcpy (newmas[j],mas[n]);cout<<'\n'<<newmas[j];j++;} } delete [] newmas; cin.get(); }
Для работы со строками-массивами можно использовать специальные функции, описанные в заголовочном файле string.h
|