25.12.2015, 18:20
общий
это ответ
Здравствуйте, Посетитель - 399128!
Держите программу
[code h=200]
/*
Найти сумму всех элементов массива до первого нуля и его номер.
*/
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <malloc.h> //для выделения памяти в куче
#include <time.h> //для инициализации герератора псевдослучайных чисел
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
int i,j,n;
printf("Введите количество элементов в массиве: ");
scanf("%d",&n);
srand(time(NULL)); //инициализация генератора псевдослучайных чисел
int *A; //Т.к. n заранее неизвестны, будем строить массив динамически
A = (int*)malloc(n*sizeof(int*));
//заполним матрицу случайными числами
for(i=0;i<n;i++)
{
A[i]=(rand()%10); //получим числа в диапазоне [0,9]
printf("%3d ",A[i]); //выведем элементы в одной строке
}
printf("\n");
int sum=0;
for(i=0; i<n; i++)
{
if (A[i] == 0) //считаем до первого нуля
break;
sum += A[i];
}
printf("\nРезультат:\n"); //выводим, что у нас получилось
if (i == 0)
printf("A[0] == 0\n"); //0 оказался первым
else if (i == n)
printf("Sum = %d\n", sum); //ни одного нуля
else
printf("Sum = %d, A[%d]=0\n", sum, i);
system("pause");
free (A); //освободим память, запрошенную под массив
return 0;
}
[/code]
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен