Exemplo de Menu
Publicado por fabio 09/02/2006
[ Hits: 14.981 ]
Exemplo de Menu
(Windows) --------------------------- #include <stdio.h> #include <conio.h> #include <dos.h> #include <math.h> #include <stdlib.h> #include <desenhos.h> #define UP 72 #define DOWN 80 #define ENTER 13 char cmenu[5][15]={"> CALCULAR <", "> AJUDA <", "> AUTOR <", "> SAIR Esc<",""}; int imenu, linha, estado, tecla; void menu() { clrscr(); textbackground(4); for(linha=1;linha<=4;linha++) { gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } linha=0; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); textbackground(0); } int main() { double linf, lsup, np, fr, cnt, dpf, *pf; int menu1, menu2; pf=&dpf; textcolor(14); menu(); do { np=0; tecla=getch(); if(tecla==DOWN&&linha<4) { textbackground(4); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); linha++; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } if(tecla==UP&&linha>-1) { textbackground(4); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); linha--; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } if(tecla==DOWN&&linha==4) { textbackground(4); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); linha=0; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } if(tecla==UP&&linha==-1) { textbackground(4); gotoxy(30,linha+7); cprintf("%s", cmenu[linha+1]); linha=3; textbackground(1); gotoxy(30,linha+6); cprintf("%s", cmenu[linha]); } /* Fun‡äes do menu */ if(tecla==ENTER&&linha==0) { textbackground(0); clrscr(); printf("Entre com o intervalo de n£meros naturais.\n"); printf("De: "); scanf("%lf", &linf); printf("at‚: "); scanf("%lf", &lsup); for(cnt=linf;cnt<=lsup;cnt++) { if(cnt==2||cnt==3||cnt==5||cnt==7) { np++; } if((modf(cnt/2,pf)!=0)&&(modf(cnt/3,pf)!=0)&&(cnt!=1)) { if((modf(cnt/5,pf)!=0)&&(modf(cnt/7,pf)!=0)) { np++; } } } printf("\nH %.1lf n£meros primos", np); getch(); menu(); } if(tecla==ENTER&&linha==1) { textbackground(0); clrscr(); puts("Ajuda do NPRIMOS v.0.1\n"); puts("Este programa calcula a quantidade de n£meros primos existente no"); puts("intervalo de n£meros naturais definido pelo usu rio."); puts("Exemplo:"); puts("Selecione 'calcular', depois no campo 'De' insira o limite inferior"); puts("do intervalo, no campo 'at‚' insira o limite superior do intervalo."); puts("Ser mostrado a quantidade de n£meros primos."); getch(); menu(); } if(tecla==ENTER&&linha==2) { textbackground(0); clrscr(); waner(); puts("\nNPRIMOS v.0.1"); puts("Desenvolvido por Waner Wodson."); puts("email: wwagsilva@terra.com.br"); getch(); menu(); } if(tecla==ENTER&&linha==3) { textbackground(0); clrscr(); gotoxy(40-strlen("NPRIMOS v.0.1")/2, 12); printf("NPRIMOS v.0.1\n\n"); exit(0); } } while(tecla!=27); return 0; }
utilities_linux.h - Biblioteca com diversas funções para o Linux
Preloader.c - Adaptação do Tarik Ahmad (Thiago Alexandre) para linux
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Erro de segmentação «Segmentation fault (core dumped)» ao retornar obj... (4)
Não Consigo instalar o cli-visualizer no Ubuntu 24.04 (2)
compilação samba 4.22 rock linux 9.5 (1)
Posso instalar usar o grub sem ter linux instalado, para iniciar o win... (1)
Ocomon 6.0.1 - Problemas ao editar configurações estendidas (4)