Moze Wam wpadna poprawki w oko.
Czy moglby ktos to sprawdzic ? Napisany jest w C++ a mialbyc w c.
Temat tablice 2 wymiarowe i textowe.
tekst - zamiana wskazanego znaku na wskazany
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
char* tab;
char znak;
int rozmiar, indeks;
printf("Podaj rozmiar tablicy: ");
scanf("%d",&rozmiar);
tab = (char*) malloc (rozmiar); //Alokowanie pamieci
srand (time(0));
for (int i=0; i<rozmiar; i++) //Uzupelnianie tablicy losowymi elementami
{
tab[i]= rand()%26+97;
}
for (int i=0; i<rozmiar; i++) //Wypisanie tablicy
{
printf("%c\n",(char)tab[i]);
}
printf("Podaj indeks elementu, ktory chcesz zmienic (pamietaj indeksowanie zaczyna sie od 0): ");
scanf("%d",&indeks);
printf("\nPodaj podaj na jaki znak chcesz zmienic ten element: \n");
fflush(stdin); //Wyczyszczenie bufora
scanf("%c",&znak);
tab[indeks]=znak;
printf("\nPo zmianie: \n");
for (int i=0; i<rozmiar; i++) //Ponowne wypisanie tablicy
{
printf("%c\n",(char)tab[i]);
}
free(tab); //Zwalnianie pamieci
system("pause");
}
Napisz program w C, który wczytuje wierszami tablicę typu int A o K kolumnach i W
wierszach. Utwórz wektor wynik, w którym zapamiętasz elementy o parzystych indeksach
kolumny i nieparzystych indeksach wiersza. Tablicę naleŜy przeglądać kolumnami
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
int main ()
{
int **A;
int *wynik;
int k, w, i,j,k1,w1; //k - kolumny, w - wiersze
puts("Liczba kolumn: ");
scanf("%d", &k);
A = (int**)malloc(k * sizeof(int*));
puts("\nLiczba wierzy: ");
scanf("%d", &w);
for(i=0; i<k; i++)
{
*(A+i)=(int*)malloc(w*sizeof(int));
}
srand(time(0));
for(i=0; i<k; i++)
{
for(j=0; j<w; j++)
{
A[j][i]= rand()% 10000;
}
}
for(j=0; j<w; j++)
{
for(i=0; i<k; i++)
{
printf("Element A[%d][%d]: %d\n",j,i,A[j][i]);
}
}
k1=0;
w1=0;
if (k % 2 == 0)
{
k1= k/2;
}
else
{
k1= (k / 2) + 1;
}
if (w % 2 == 0)
{
w1= w/2;
}
else
{
w1= (w / 2) + 1;
}
wynik=(int*)malloc(k1*w1*sizeof(int));
int kk=0;
for(int i=0;i<w;i++)
{
for(int j=0; j<k;j++)
{
if((j%2==0)&&(i%2!=0))
{
wynik[kk]=A[i][j];
kk++;
}
}
}
for(i=0; i<k1*w1; i++)
{
printf("Element Wynik[%d]: %d\n",i,wynik[i]);
}
free(A);
free(wynik);
system ("pause");
return 0;
}