Программа выдает одни нули при сортировке массива - C (СИ)
Формулировка задачи:
вот код, программа вместо того , что-бы отсортировать массив по возрастанию , выдает на вывод одни нули
#include<stdio.h> #include<conio.h> #include<stdlib.h> #include<math.h> main(){ clrscr(); float mass_q[100]; int n; printf("Vvedite N ");scanf("%d", &n); printf("\n\n"); for (int i=0;i<n;i++) mass_q[i]=((rand()%100-20)); printf("Ishodnyy_massiv\n"); for(i=0;i<n;i++) printf("mass_q[%d]=%g\t",i, mass_q[i]); int pol=0,otrit=0; for (i=0; i<n; i++) {if(mass_q[i]>0)pol++; if(mass_q[i]<0)otrit++;} printf("\n\n\notritsatelnyh=%d\n\n\n",otrit); // bylo pokazano skolko otritsat eleventow int tmp; for(i=0;i<n;i++){ for(int j=i;j<10;j++){ if(mass_q[j]<mass_q[j+1]){tmp=mass_q[j];mass_q[j+1];mass_q[j+1]=tmp;} } } printf("otsortirovannyy masiv\n"); for(i=0;i<n;i++) printf("%d\t", mass_q[i]); }
Решение задачи: «Программа выдает одни нули при сортировке массива»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <math.h> int main(void) { int pol=0, otrit=0; float mass_q[100]; int tmp, n, i, j; printf("Vvedite N "); scanf("%d", &n); printf("\n\n"); for (i = 0; i < n; i++) mass_q[i]=((rand()%100-20)); printf("Ishodnyy_massiv\n"); for(i=0;i<n;i++) printf("mass_q[%d]=%g\t",i, mass_q[i]); for (i=0; i<n; i++) { if(mass_q[i]>0)pol++; if(mass_q[i]<0)otrit++; } printf("\n\n\notritsatelnyh=%d\n\n\n",otrit); // bylo pokazano skolko otritsat eleventow printf("%d\n", i); for(; i > 0; i--) { for(j = 0 ; j < n; j++) //заменим 10 на n { if(mass_q[j] > mass_q[j+1]) { tmp = mass_q[j]; mass_q[j] = mass_q[j+1]; mass_q[j+1] = tmp; } } } printf("otsortirovannyy masiv\n"); for(i = 0; i < n; i++) printf("%f\t", mass_q[i]); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек: stdio.h, stdlib.h, math.h
- Объявление переменных: pol, otrit, mass_q, tmp, n, i, j
- Ввод числа N с клавиатуры и сохранение его в переменной n
- Заполнение массива mass_q случайными числами от -20 до 20 с шагом 1
- Вывод исходного массива на экран
- Подсчет количества положительных и отрицательных чисел в массиве и сохранение их в переменных pol и otrit соответственно
- Вывод количества отрицательных чисел на экран
- Начиная с самого большого элемента, производится сортировка массива по убыванию
- Вывод отсортированного массива на экран
- Возврат 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д