hola necesito ayuda con un programa que estoy haciendo en c++.
el programa debe realizar los siguiente: primero el usuario digita el numero de filas y columnas luego ingresa los números para rellenar la matriz después ingresa un numero sea 1 2 o 3 para girar la matriz tantas veces como el numero anteriormente ingresado hacia la derecha únicamente y se imprime
tengo este código
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
void girar1();
void girar2();
void girar3();
void guarda_tem();
int matriz[100][100], f, c;
int mTem[50][50];
int main(){
int f;
int c;
int opc;
cout << "ingrese el valor de f: ";
cin >> f;
cout << "ingrese el valor de c: ";
cin >> c;
int matriz[f][c];
for(int i = 0; i < f; i++){
for(int j = 0; j < c; j++){
cout << "ingrese los valores de la matriz: ";
cin >> matriz[j];
}
}
for(int i = 0; i < f; i++){
for(int j = 0; j < c; j++){
cout << matriz[j];
}
cout << endl;
}
cout << endl;
int mTem[f][c];
for(int i = 0; i < f; i++){
for (int j = 0; j < c; j++){
matriz[j] = mTem[j];
}
}
while(true){
cout << "\ningrese 1, 2 o 3 veces a girar matriz: ";
cin>>opc;
switch(opc){
case 1:
girar1();
break;
case 2:
girar2();
break;
case 3:
girar3();
break;
}
}
return 0;
}
void girar1(){
int t = 0;
for(int i = 100-1; i >= t; --i){
for(int j = 0; j < 100; j++){
mTem[t][j] = matriz[j];
}
}
}
void girar2(){
int t = 0;
for(int i = 20-1; i >= t; --i){
for(int j = 0; j < 20; j++){
mTem[t][j] = matriz[j];
}
}
}
void girar3(){
int t = 0;
for(int i = 20-1; i >= t; --i){
for(int j = 0; j < 20; j++){
mTem[t][j] = matriz[j];
}
}
}
void guarda_tem(){
for(int i = 0; f < 100; i++){
for(int j = 0; c < 100; j++){
matriz[j] = mTem[j];
cout<<matriz[j]<<" ";
}
}
}