Другие языки программирования и технологии

помогите с си

2.Написать функцию, которая возвращает 1, если одномерный массив, полученный функцией в качестве аргумента, является упорядоченным по возрастанию.
#include <stdio.h>
#include <conio.h>
#define N 8
int f(int *, int);
void main() {
int a[N], sz, n;
for (n = 0; n < N; n++) {
printf(" a[%d] -> ", n);
scanf("%d", &a[n]);
}
sz = sizeof(a) / sizeof(int);
printf("\n Result = %d", f(a, sz));
getch();
}
int f(int * arr, int size) {
int n, k = 1;
for (n = 1; n < size; n++) {
if (arr[n - 1] > arr[n]) {
k = 0;
break;
}
} return k;
}
Владимир Кузнецов
Владимир Кузнецов
77 494
Лучший ответ
#include <stdio.h>
#include <stdlib.h>

int isSort (int *arr, int size)
{
int i;
for (i = 0; i < size - 1; i++)
if (arr[ i ] > arr[ i + 1 ]) return 0;
return 1;
}

int main ( void )
{
int arr1[ 5 ] = {1, 2, 3, 4, 5};
int arr2[ 10 ] = {0, 9, 8, 7, 6, 5, 3, 0, 2, 1};
int arr3[ 6 ] = {22, 21, 20, 19, 18, 17};

printf("%s\n", isSort(arr1, 5) ? "sorted" : "not sorted");
printf("%s\n", isSort(arr2, 10) ? "sorted" : "not sorted");
printf("%s\n", isSort(arr3, 6) ? "sorted" : "not sorted");
system("pause > nul");
return 0;
}
Сак Виктор
Сак Виктор
11 082
у меня не получилось выложить код.
вечером в почту.
Игорь Шипилов
Игорь Шипилов
6 658
Спрашиваем числа, передаем функции, проверяем последовательность, возвращаем 1 если верно и 0 еслине верно.