Переписать код сортировки массива с Pascal - C (СИ)
Формулировка задачи:
Ребята-программисты друзья пожалуйста помогите человеку сдать лабу до нового года. Переведите этот код Паскаля в Си.
var a:array[1..200]of char; b:array[1..5]of char; i,n,j,k:integer; t:char; begin randomize; writeln('ishodnyj massiv a'); for i:=1 to 200 do begin n:= random(161)+40; a[i]:=chr(n); write(a[i],' '); end; writeln('ishodnyj massiv b'); for i:=1 to 5 do begin n:= random(161)+40; b[i]:=chr(n); write(b[i],' '); end; for i:=1 to 5 do for j:=1 to 200 do if b[i]=a[j]then begin inc(k); break; end; writeln; writeln('k=',k); if k=5 then for i:=1 to 200 do for j:=1 to 5 do if a[i]=b[j]then a[i]:=' '; for i:=1 to 200 do for j:=2 to 200 do if a[j]<a[j-1]then begin t:=a[j]; a[j]:=a[j-1]; a[j-1]:=t; end; writeln('novyj massiv a'); for i:=1 to 200 do write(a[i],' '); for i:=1 to 5 do for j:=2 to 5 do if b[j]<b[j-1]then begin t:=b[j]; b[j]:=b[j-1]; b[j-1]:=t; end; writeln('novyj massiv b'); for i:=1 to 5 do write(b[i],' '); readln; end.
Решение задачи: «Переписать код сортировки массива с Pascal»
textual
Листинг программы
#include <stdlib.h> #include <stdio.h> char a[200],b[5]; int i,n,j,k; char t; int main () { randomize(); printf("\nishodnyj massiv a\n"); for (i=0;i<200;i++) { a[i]=random(161)+40;; printf ("%c ",a[i]); } printf ("\nishodnyj massiv b\n"); for (i=0;i<5;i++) { b[i]=random(161)+40; printf ("%c ",b[i]); } for (i=0;i<5;i++) for (j=0;j<200;j++) if (b[i]==a[j]) { k++; break; } printf ("\nk=%d",k); if (k==5) for (i=0;i<200;i++) for (j=0;j<5;j++) if (a[i]==b[j]) a[i]=' '; for (i=0;i<200;i++) for (j=1;j<200;j++) if (a[j]<a[j-1]) { t=a[j]; a[j]=a[j-1]; a[j-1]=t; } printf ("\nnovyj massiv a\n"); for (i=0;i<200;i++) printf ("%c ",a[i]); for (i=0;i<5;i++) for (j=1;j<5;j++) if (b[j]<b[j-1]) { t=b[j]; b[j]=b[j-1]; b[j-1]=t; } printf ("\nnovyj massiv b\n"); for (i=0;i<5;i++) printf ("%c ",b[i]); getchar (); return 0; }
Объяснение кода листинга программы
- Включаются необходимые заголовочные файлы: stdlib.h и printf.h
- Объявляются массивы a и b, а также переменные i, n, j, k и t
- В функции main() генерируются случайные значения для массивов a и b и выводятся на экран
- Для каждого элемента массива b ищется соответствующий элемент в массиве a. Если такой элемент найден, то счетчик k увеличивается на единицу
- Если k равно 5, то для каждого элемента массива a заменяются соответствующие элементы массива b на пробел
- Производится сортировка массива a по возрастанию с помощью алгоритма сортировки пузырьком
- Выводятся отсортированный массив a и массив b
- Программа ожидает нажатия клавиши для завершения работы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д