Error C2664: fmatr: невозможно преобразовать параметр 1 из 'float [4][4]' в 'float *' - C (СИ)
Формулировка задачи:
#include "stdafx.h" #include<stdio.h> #include<conio.h> /* Описание функции fmatr */ void fmatr(float *ptx, int m, int n, float f, float g, float c, float *pt_sx, float *pt_px, char name) { int i,j,imax,jmax; float xmax,sx,px; printf("Матрица %c размером %dx%d\n",name,m,n); for(i=0;i<=m-1;i++) { for(j=0;j<=n-1;j++) { *(ptx+i*n+j)=f+g*i+c*j; printf("%.1f ", *(ptx+i*n+j)); } printf("\n"); } imax=jmax=0; xmax=*ptx; for(i=0;i<=m-1;i++) for(j=0;j<=n-1;j++) if(*(ptx+i*n+j)>xmax) { xmax=*(ptx+i*n+j); imax=i; jmax=j; } printf("%cmax=%.1f imax=%d jmax=%d\n", name, xmax, imax, jmax); sx=1; for(j=0;j<=n-1;j++) sx*=*(ptx+imax*n+j); px=1; for(i=0;i<=m-1;i++) px*=*(ptx+i*n+jmax); *pt_sx=sx; *pt_px=px; } void main() { float a[5][5], b[3][3], c[4][4], sa, sb, sc, pa, pb, pc; fmatr(a, 5, 5, 1.4, 2.5, -4.7, &sa, &pa, 'A'); printf("sa=%.1f pa=%.1f\n", sa, pa); fmatr(b, 3, 3, -4.5, 6.7, 2.1, &sb, &pb, 'B'); printf("sb=%.1f pb=%.1f\n", sb, pb); fmatr(c, 4, 4, 7.7, -5.1, 3.2, &sc, &pc, 'C'); printf("sc=%.1f pc=%.1f\n",sc,pc); }
Решение задачи: «Error C2664: fmatr: невозможно преобразовать параметр 1 из 'float [4][4]' в 'float *'»
textual
Листинг программы
fmatr( *a , 5, 5, 1.4, 2.5, -4.7, &sa, &pa, 'A'); /// fmatr( *b , 3, 3, -4.5, 6.7, 2.1, &sb, &pb, 'B'); /// fmatr( *c , 4, 4, 7.7, -5.1, 3.2, &sc, &pc, 'C'); ///
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д