Diferență între revizuiri ale paginii „SDA Lucrarea 1”
De la WikiLabs
Jump to navigationJump to searchLinia 38: | Linia 38: | ||
done = 1; | done = 1; | ||
for(i=0; i<vectorLength; i++){ | for(i=0; i<vectorLength; i++){ | ||
− | if( | + | if(vector[i] > vector[i + 1]){ |
− | temp = | + | temp = vector[i]; |
− | + | vector[i] = vector[i + 1]; | |
− | + | vector[i + 1] = temp; | |
done = 0; | done = 0; | ||
} | } | ||
Linia 48: | Linia 48: | ||
for(i=0; i<vectorLength; i++){ | for(i=0; i<vectorLength; i++){ | ||
− | printf("%d, ", | + | printf("%d, ", vector[i]); |
} | } | ||
printf("\n"); | printf("\n"); |
Versiunea de la data 5 martie 2015 22:45
Exercițiul 1
Realizați un program care să citească de la tastatură o lungime n, apoi n numere care să fie stocate într-un vector. Apoi se va citi de la tastatură o valoare v și se va afișa pe ecran de câte ori apare valoarea v în vector.
Exercițiul 2
Modificați programul de la exercițiul 1 astfel încât citirea datelor și cautarea valorii în vector să fie scrise în funcții diferite.
Exercițiul 3
Modificați programul de la exercițiul 2 astfel încât cele două funcții și main să se afle în fișiere separate.
Exercițiul 4
Următorul program implementează o sortare de vector dar are o eroare. Utilizați debugger-ul grafic pentru a identifica problema.
#include <stdio.h>
int main(){
int vectorLength;
printf("Length = ");
scanf("%d", &vectorLength);
int vector[vectorLength];
int i;
for(i=0; i<vectorLength; i++){
printf("v[%d] = ", i);
scanf("%d", &vector[i]);
}
int temp;
int done;
do{
done = 1;
for(i=0; i<vectorLength; i++){
if(vector[i] > vector[i + 1]){
temp = vector[i];
vector[i] = vector[i + 1];
vector[i + 1] = temp;
done = 0;
}
}
}while(!done);
for(i=0; i<vectorLength; i++){
printf("%d, ", vector[i]);
}
printf("\n");
return 0;
}
Exercițiul 5
Următorul program calculează factorial-ul unui număr, dar are o eroare. Utilizați debugger-ul grafic pentru a identifica problema.
#include<stdio.h>
int factorial(int n){
return n * factorial(n - 1);
}
int main(){
int number;
scanf("%d", &number);
printf("n! = %d\n", factorial(number));
return 0;
}