Контрольні питання до лабораторної роботи № 3
1. Які оператори циклу Ви знаєте? Чим вони відрізняються?
2. Поясніть призначення операторів continue, break, return та приведіть приклади їх використання в операторах циклу.
3. Замініть оператор for() в фрагменті програми на оператори while(), do…while().
int i, a=2, res ;
for (i=0;i<3;i++)
{ res =i*i-a*a; a+=2;
printf (“%d\n”, res );}
4. Як виконується оператор for із неповним набором аргументів? Поясніть результати роботи наступних фрагментів програм.
int m; for(m=0;m<3;) {m++; printf( " %d\n " ,m); } | int m=4,k=5; for(;;k––) {if(k==0) break; m++; printf( " k=%d m=%d\n " ,m);} |
5. Як виконується оператор for із роздільником кома? Поясніть результати роботи наступного фрагменту програми:
int a,b=0,c=5;
for(a=0; c>10,a<3; a++,b+=c)
{c+=3; printf( " a=%d b=%d c=%d\n " ,a,b ,c );}
printf( " Результат a=%d b=%d c=%d\n " ,a,b ,c );
6. Поясніть результати роботи кожного з фрагментів програм.
int n=0; printf(" Циклів: "); while(n++,n< 5 ) printf( " %d " ,n); printf (" N = %d " ,n ) ; | int m=0; printf(" Циклів: "); while(m <5, m ++ ) printf( " %d " ,m); printf (" M = %d " ,m ) ; | int k=0; printf(" Циклів: "); while(k <5,++ k) printf( " %d " ,k); printf (" K = %d " ,k ) ; |
Лабораторна робота №4
Масиви і покажчики
Мета роботи – ознайомитися з формами визначення одновимірних масивів у мові Сі, із значенням покажчиків при роботі з масивами, навчитися формувати числові і символьні масиви.
Програма 4.1 У програмі визначаються та заповнюється випадковими числами одновимірний масив. Розглядається розміщення його в пам'яті. Знаходиться мінімальний елемент в масиві.
|
|
#include <stdio.h>
#include <conio.h>
#include <std lib .h>
Void main()
{clrscr();
int arr[ 10 ] , i , min ;
randomize();
for(i=0;i<7;i++)
{ arr[i] =random(101)-50;
printf("arr[%d]=%3d %p\ n ",i,arr[i],&arr[i]); }
printf("Розмір пам’яті масиву arr : %d байт\n",sizeof ( arr ) );
min=arr[0]
for(i=0;i<7;i++)
if( arr[i] <min) min= arr[i];
printf(" Mi н i мальний елемент\n", min ); getch ();}
Завдання до програми 4.1
Розробіть програму, яка визначає та ініціалізує масив цілих чисел заданого розміру, виконує задані обчислення та виводить на екран масив і результат обчислення.
1. Введіть з клавіатури масив цілих чисел та обчисліть середнє арифметичне ненульових елементів. Розмір масиву 6.
2. Введіть з клавіатури масив цілих чисел та обчисліть середнє арифметичне елементів без обліку мінімального елемента масиву. Розмір масиву 8.
3. Введіть з клавіатури масив цілих чисел та обчисліть середнє арифметичне додатних елементів. Розмір масиву 5.
4. Введіть з клавіатури масив цілих чисел та обчисліть середнє арифметичне парних елементів. Розмір масиву 6.
5. Введіть з клавіатури масив цілих чисел та обчисліть суму квадратів від’ємних елементів. Розмір масиву 7.
Програма 4.2 Програма підраховує кількість додатних чисел між мінімальним та максимальним значеннями елементів масиву.
|
|
#include<iostream.h>
#include<conio.h>
Int main()
{clrscr();
const int n=10;
int a[n]={1,3,-5,1,-2,1,-1,3,8,4};
int i,imax, imin ,count;
for (i=imax=imin=0; i<n; i++)
{if(a[i]>a[imax])imax=i;
if(a[i]<a[imin])imin=i;}
cout<<"\n max a["<<imax<<"] = "<<a[imax];
cout<<"\n min a["<<imin<<"] = "<<a[imin];
int ibeg=imax<imin? imax : imin;
int iend=imax<imin? imin : imax;
for(count=0,i=ibeg+1;i<iend;i++)
if(a[i]>0) count++;
cout <<"\nMiж a["<<ibeg<<"]i a["<<iend<<"]";
cout <<"кількість додатних чисел "<<count<<endl;
getch (); return 0;}
Завдання до програми 4.2
Розробіть програму, яка виконує задані обчислення та виводить на екран масив і результат обчислення.
1. Заповніть масив цілих чисел випадковими числами від -40 до 40 та обчисліть кількість від’ємних чисел. Розмір масиву 15.
2. Заповніть масив цілих чисел випадковими числами від 0 до 60 та обчисліть кількість чисел, кратних 3. Розмір масиву 12.
3. Заповніть масив цілих чисел випадковими числами від -20 до 20 та обчисліть кількість парних чисел. Розмір масиву 16.
4. Заповніть масив цілих чисел випадковими числами від 0 до 100 та обчисліть кількість чисел, кратних 5. Розмір масиву 15.
5. Заповніть масив цілих чисел випадковими числами від -30 до 30 та обчисліть кількість непарних чисел. Розмір масиву 1 4.
|
|
Програма 4.3 Програма визначає максимальний елемент масиву, використовуючи метод доступу до елементів масиву через розіменування покажчика.
#include<stdio.h>
#include<conio.h>
Void main()
{clrscr();
int arr [10]={5,3,2,4,6,7,11 0 ,17,0,13}, max, i;
int *px= arr ; // визначення покажчика типу на масив
max=*px; //привласнення max значення нульового елемента масиву
i=1;
while(i<10)
{if(*(px+i)>max) max=*(px+i);
i++;
}
printf("max=%d\n", max);
getch ();}
Завдання до програми 4.3
Розробіть програму, яка виконує задані обчислення, використовуючи метод доступу до елементів масиву через розіменування покажчика, та виводить на екран результати обчислень.
1. Введіть з клавіатури масив цілих чисел та визначить номер мінімального елементу масиву. Розмір масиву 8.
2. Введіть з клавіатури масив цілих чисел та визначить номер максимального елементу масиву. Розмір масиву 6.
3. Введіть з клавіатури масив дійсних чисел та визначить мінімальний елемент масиву. Розмір масиву 7.
4. Введіть з клавіатури масив цілих чисел та визначить максимальний парний елемент масиву. Перший елемент масиву дорівнює 2. Розмір масиву 8.
5. Введіть з клавіатури масив цілих чисел та обчисліть та визначить мінімальний непарний елемент масиву. Перший елемент масиву дорівнює 1. Розмір масиву 6.
|
|
Програма 4.4 Програма сортирує елементи масиву методом вибору максимального елемента масиву.
#include<stdio.h>
#include<conio.h>
#define N 10
Void main()
{clrscr();
int dig[N]={5,3,2,4,6,7,11,17,0,13};
int i, j, mm, max, tmp;
puts(“ Масив до сортування ”);
for(i=0; i<N; i++)
printf("%d", dig[i]);
for(i=N-1; i>=1; i--)
{max=dig[0]; mm=0;
for(j=1; j<=i; j++)
if(dig[j]>max){max=dig[j]; mm=j;}
tmp=dig[i]; // запам’ятати кінець
dig[i]=max; // максимум у кінець
dig[mm]=tmp; // кінець на місце максимуму
}
puts(“ Масив після сортування ”);
for(i=0; i<N; i++)
printf("%d ", dig[i]);
getch ();}
Завдання до програми 4.4
Розробіть програму, що сортує заданим методом одновимірний масив цілих чисел та виводить масив до і після сортування.
1. Заповніть масив цілих чисел випадковими числами від -40 до 40 та відсортуйте цей масив за убуванням бульбашковим методом.
2. Заповніть масив цілих чисел випадковими числами від - 60 до 60 та відсортуйте цей масив за зростанням методом прямого упорядкування.
3. Заповніть масив дійсних чисел випадковими числами від - 50 . 5 до 50 . 5 та відсортуйте цей масив за убуванням методом вибору мінімального елемента масиву.
4. Заповніть масив цілих чисел випадковими числами від - 100 до 100 та відсортуйте цей масив за зростанням бульбашковим методом.
5. Заповніть масив цілих чисел випадковими числами від - 50 до 50 та відсортуйте за убуванням масив чисел методом прямого упорядкування.
Програма 4.5 Програма забезпечує введення з клавіатури рядка та виведення його на екран різними засобами.
#include<stdio.h>
#include<conio.h>
#define K 80
Void main()
{clrscr();
char str[K]; // резервування пам’яті для рядка
p uts ("Введіть рядок не більше K символів:");
gets(str); // введення рядка з клавіатури до натискання <Enter>.
printf("Ви ввели рядок %s\n",str);
printf("Введіть ще рядок не більше 80 символів:\n");
scanf("%s",str); //введення рядка до натискання <Прогалина>
printf("Ви ввели рядок: " );
puts(str);
getch ();}
Завдання до програми 4.5
Розробіть програму, що вводить рядок з кількома словами та виводить його з заданим повідомленням.
1 Введіть рядок з назвою предмету та прізвищем викладача та повідомте, що консультація відбудеться в середу на п’ятій парі.
2. Введіть рядок з прізвищем, ім'ям свого друга та бажайте йому гарного настрою і успіхів в навчанні.
3. Введіть рядок з назвою фільму та прізвищем режисера та повідомте, що диск з таким фільмом з’явився в продажі.
4. Введіть рядок з назвою міста, вулиці й номера будинку та повідомте, що на цю адресу надійшов лист.
5. Введіть рядок з назвою книги та прізвищем автора та повідомте, що така книга з’явилася в бібліотеці.
Дата добавления: 2019-02-13; просмотров: 219; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!