#include<stdio.h>
#include<stdlib.h>
void generate_matrices(int a[5][5], int b[5][5]);
void print_matrix(int a[5][5]);
void multiply_matrices(int a[5][5], int b[5][5], int c[5][5]);
void calc_trace(int a[5][5]);
int main()
{
int a[5][5],b[5][5];
generate_matrices(a,b);
print_matrix(a);
return 0;
}
void generate_matrices(int a[5][5], int b[5][5])
{
int seed,i,j;
printf("Enter seed integer value: ");
scanf("%d",&seed);
printf("\n\nSeed Value is %d\n\n",seed);
srand(seed);
for(i=0;i<5;i++) {
for(j=0;j<5;j++) {
a[i][j]=rand() %51 + (-25);
b[i][j]=rand() %51 + (-25); }
}
}
void print_matrix(int a[5][5]) {
int i,j;
printf("Matrix A:\n");
for(i=0;i<5;i++){
for(j=0;j<5;j++){
printf("%d ",a[i][j]); }
printf("\n");
}
printf("\nMatrix B:\n");
for(i=0;i<5;i++){
for(j=0;j<5;j++){
printf("%d ",a[i][j]); }
printf("\n");
}
}
Bu, sahip olduğum bir kod parçasıdır. generate_matrices
işlevi iyi çalışıyor, ancak yardıma ihtiyacım olan işlev print_matrix
işlevidir. Bu fonksiyonu iki kez çağırmam ve 2 farklı dizi üretmem gerekiyor. Halihazırda fonksiyonda iki kere denen [i] [j] 'ye sahibim, ancak ikincisinde [i] [j]' nin b [i] [j] olması gerekiyor.2 farklı 2B dizisi üretmek için 1 işlev çağırma
Sorun şu ki, 2 farklı diziyi üretmek için 1 işlevi nasıl çalıştırabileceğinizi anlamıyorum? Yeterince açık yapmadıysanız, örneğin:
(...)
print_matrix(a)
print_matrix(b)
(...)
void print_matrix(int a[5][5])
{
(...)
}
Yani ben iki kez 2 farklı diziler yazdırmak için aynı işlevi arıyorum, ancak ben Fonksiyonu ilk kez çağırabilir anlamıyorum Sadece 1 dizi üretmek, daha sonra ikinci diziyi üretmek için aynı işlevi farklı bir değişkenle tekrar çağırmak? Kesinlikle fonksiyonu ilk kez çağırmak, fonksiyonun kendisinde yaratılan her şeyi üretebilir mi ???
Bilginize: Ben işlev adlarını değiştirmek veya işlev adları vb ben, nispeten açık şerefe yaptık umut
yılında işaretçileri oluşturamazsınız.
Üzgünüz, ama: facepalm: Bu işlevde yalnızca bir matris yazdırın (printf ("matrix B") ile başlayan bölümü kaldırın;) ve iki farklı matrisle iki kez arayın. Görüntülenecek matrisin adını istiyorsanız, print_matrix ' – ForceBru
' a başka bir seçenek olarak aktarın. Göreceli olarak temizleyin :) Hiç net değil ... –
prototipinizi değiştir 'void print_matrix (int a [5] [5], int b [5] [5]) ' – xvan