Răspuns:
Punctele à și b sunt făcute bine ca le-am verificat. La C nu am știut, scuze, dar mai încerc
#include <iostream>
#include <math.h>
using namespace std;
int main()
{int a[100][100],i,j,m,n,x=1,mi,k=2;
cout<<"n= ";cin>>n;
cout<<"m= ";cin>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
cout<<"a["<<i<<"]["<<j<<"]=";
cin>>a[i][j];
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}
mi=a[1][1];
for(i=1;i<=n;i++)
{for(j=1;j<=m;j++)
if(mi>a[i][j])
mi=a[i][j]; }
while(k<=sqrt(mi)&&(x==1))
{if(mi%k==0)
{x=0;
}else
k=k+1; }
if(x==1)
cout<<"Cel mai mic element prim din matrice este : "<<mi;
}
Sper ca te-am ajutat!