Ir ao conteúdo

Posts recomendados

Postado

Estou com uma pequena dificuldade para imprimir os dados cadastrados no programa 

 

 pfv me ajudem

 

 

#include<stdio.h>
#include <stdlib.h>
#include <iostream>
#include <fstream>
#define SIZE 200

char nome [SIZE] [50];
char materia[SIZE] [50];
char curso[SIZE] [50];
int op;
void cadastro();

int main (void) {
	system("color 1F");
	cadastro();
}
void cadastro(){
	static int linha;
	do{
		printf("\nDigite o Nome");
		scanf("%s", &nome[linha]);
		printf("\nDigite a materia");
		scanf("%s", &materia[linha]);
		printf("\nDigite o curso");
		scanf("%S", &curso[linha]);
		printf("\ndigite 1 para continuar ou 2 para sair");
		scanf("%d", &op);
		linha++;
	}while(op==1);
	

	
	system("pause");
}

 

  • Obrigado 1
  • Membro VIP
Postado

Crie a função algo como:

imprime()
{
for(i=0;i<=linha;i++)
	{
	printf(%s,nome[linha]);
	printf(%s,materia[linha]);
	printf(%s,curso[linha]);
	}
}

linha deve ser global

  • Curtir 1
  • Obrigado 1
Postado
scanf("%s", &nome[linha]);

Não vai & antes do nome do vetor ou matriz nos scanfs, pois o nome já é um endereço de memória. Então corrigindo a linha acima ficaria:

scanf("%s", nome[linha]);

 

  • Curtir 2
Postado

@farfzim0      além do que já foi comentado ,  a matriz de char precisa ter a quantidade de linhas e a quantidade de colunas e a quantidade de caracteres de cada palavra da matriz , pois se não colocar esse terceiro colchete ela será uma matriz de char com apenas hum caractere  em cada posição da matriz ,  então seu código com algumas modificações poderia ser assim    :

#include <stdio.h>        /* biblioteca da linguagem c , em c++ não precisa dela        */
#include <conio.h>        /* para usar o comando getch()                                */
#include <cstdlib>        /* se é c++ então essa é a biblioteca                         */
#include <iostream>       /* essa blilioteca é do c++ mesmo                             */
#include <fstream>        /* essa blilioteca é do c++ mesmo                             */
#define SIZE 20           /* para testar usar pouca memória                             */
#define pausar for(f=0;f<50000000;f++);/* definir huma pausa                            */

char nome   [SIZE][5][20];/* 1º é a linha 2º é a coluna 3º é a quantidade de caracteres */
char materia[SIZE][5][20];/* 1º é a linha 2º é a coluna 3º é a quantidade de caracteres */
char curso  [SIZE][5][20];/* 1º é a linha 2º é a coluna 3º é a quantidade de caracteres */
int op,j,f,linha;         /* variáveis globais aqui antes da main são inicializadas com */
                          /* valor zero e podem ser acessadas em qq parte do programa   */
void cadastro();          /* protótipo da função , para ser inserida depois da main     */

int main(){
	system("color 1F");   /* 1º cor do fundo da tela  2º cor das letras             */
	cadastro();           /* chama a função para cadastrar                          */
	printf("\nConte%cdo Das Matrizes :\n\n",163);     /* pula para a linha de baixo */
	for(j=0;j<linha;j++){ /* imprime a qtd de cadastros especifi pelo contador linha*/
        printf("Nome ----> %s\n"  ,    nome   [j][0]);/* a linha e a coluna da matriz   */
        printf("Mat%cria -> %s\n" ,130,materia[j][0]);/* a linha e a coluna da matriz   */
        printf("Curso ---> %s\n\n",    curso  [j][0]);/* a linha e a coluna da matriz   */
    }
    printf("\n   Tecle . . .  !\n\n");
    while( ! kbhit() ){                  /* huma animação                               */
        printf("      | \r"   );pausar;
        printf("      / \r"   );pausar;
        printf("      - \r"   );pausar;
        printf("      %c\r",92);pausar;
    }
    return 0;
}
void cadastro(){                         /* a função                                    */
    do{                                  /* repetir                                     */
        printf("Digite o Nome ");
        scanf("%s",nome[linha][0]);      /* a letra que especifica o tipo em minúsculo  */
        printf("Digite a Mat%cria ",130);/* e como é string não precisa do  &           */
        scanf("%s",materia[linha][0]);   /* a letra que especifica o tipo em minúsculo  */
        printf("Digite o Curso ");       /* e como é string não precisa do  &           */
        scanf("%s",curso[linha][0]);     /* a letra que especifica o tipo em minúsculo  */
		                         /* e como é string não precisa do  &           */
        printf("\n     digite\n 1 para continuar\n 2 para sair ");
        op = getch()-48;                 /* como é número precisa do  &                 */
        linha++;                         /* incrementa o contador em uma unidade        */
        printf("\n\n");                  /* pula para a linha de baixo                  */
    }while( op == 1 );                   /* enquanto for igual a hum                    */
}

 

  • Curtir 1
Postado

@devair1010 valeu man ajudou pacas

adicionado 25 minutos depois
23 minutos atrás, farfzim0 disse:

@devair1010 Na real falto só uma coisa

preciso saber como imprimir as matrizes armazenadas num bloco de notas 

 

desculpa é que eu so meio disléxico  

 

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...