Aqui está a solução final:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include<locale.h>
char nomeP[20][30],textoP[20][200][50]; ///20(quantidade max de projetos),30(titulo)
int seta,posicao=0,quantP=0,linha=-1;
///CIMA = 72
///BAIXO = 80
void MenuposicaoS();
void Novo();
void Projeto();
//
int main()
{
setlocale(LC_ALL,"portugese");
while(1<2){
MenuposicaoS();
Novo();
if(posicao>0)
Projeto();
}
return 0;
}
//
void MenuposicaoS(){
do{
system("cls");
printf("\n\n\t\tUORDI\n\n\t");
if(posicao==0){
printf("->Novo Projeto+\n");
for(int i =0;i<=quantP;i++){
printf("%s\n\t ",nomeP[i]);
}
}
else if(posicao>0){
printf(" Novo Projeto+");
for(int i =0;i<posicao;i++){
printf("\n\t %s",nomeP[i]);
}
printf("\n\t->");
for(int i =posicao;i<=quantP;i++){
printf("%s\n\t ",nomeP[i]);
}
}
seta = getch(); ///comentario de: Simon Viegas (colocar o getch antes do if)
if (seta == 0 || seta == 224) ///<-comentario de: vangodp
seta = getch();
if(seta==80)
posicao++;
else if(seta==72) ///comentário de Simon Viegas e cyan(else antes do if)
posicao--;
if(posicao>quantP)
posicao=0;
else if(posicao<0)
posicao=quantP;
}while(seta!=13);
}
void Novo(){
system("cls");
if(posicao==0){
quantP++;
printf("\n\n\tTITULO:");
gets(nomeP[quantP]);
system("cls");
do{
linha++;
gets(textoP[quantP][linha]);
}while(textoP[quantP][linha][0]!='.');
}
}
void Projeto(){
system("cls");
linha=-1;
do{
linha++;
puts(textoP[posicao][linha]);
}while(textoP[quantP][linha][0]!='.');
getch();
}
OBS.: (Dentro do programa) para o programa entender que você acabou o texto basta digitar "." (ponto final) no COMEÇO DE UMA LINHA.
Ps.: O programa ficou um pouco extenso, por isso vai ser díficil tanto de explicar quanto de entendê-lo mas vale a pena compilar para ver o resultado.
Este é um programa que armazena textos. (assim como o word)
Para compilar: Use windows, GNU GCC compiler.