Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
MaísaFrancieli

[Resolvido] Considerar zeros à esquerda

Recommended Posts

Boa noite,

Programo em C, quando lemos uma variável do tipo int com valor de 01, ela desconsidera o zero a esquerda e seu valor passa a ser 1, como não deixar isso ocorrer?

O problema é o seguinte, tenho um algoritmo que lê os dois primeiros dígitos do ano e os dois finais, se dou 20 para os dois primeiros dígitos e 01 para os dois finais o ano deve ser exibido como 2001, mas é exibido como 201.

O código é o seguinte:

#include <stdio.h>
#include <stdlib.h>

int main()
{
int D,M,A,S,count,dia;

count=0;

printf("******************50 DATAS******************\n");

while(count<50){

printf("Digite um dia de 0 a 6: \n");
scanf("%d",&D);

while(D<0 || D>6){
printf("\nDIA INVALIDO!\n");
printf("Digite um dia de 0 a 6: \n");
scanf("%d",&D);
}
printf("Digite o mes: \n");
printf(" 11-Janeiro\n 12-Fevereiro\n 1-Marco\n 2-Abril\n 3-Maio\n 4-Junho\n 5-Julho\n 6-Agosto\n 7-Setembro\n 8-Outubro\n 9-Novembro\n 10-Dezembro\n");
scanf("%d",&M);

while(M<1 || M>12){
printf("\nMES INVALIDO!\n");
printf("Digite o mes: \n");
printf(" 11-Janeiro\n 12-Fevereiro\n 0-Marco\n 1-Abril\n 2-Maio\n 3-Junho\n 4-Julho\n 5-Agosto\n 6-Setembro\n 7-Outubro\n 8-Novembro\n 10-Dezembro\n");
scanf("%d",&M);
}

printf("Digite os dois primeiros digitos do ano: \n");
scanf("%d",&A);

while(A<0 || A>99){
printf("\nDIGITOS INVALIDOS!\n");
printf("Digite os dois primeiros digitos do ano: \n");
scanf("%d",&A);
}

printf("Digite os dois ultimos digitos do ano: \n");
scanf("%d",&S);

while(S<0 || S>99){
printf("\nDIGITOS INVALIDOS!\n");
printf("Digite os dois ultimos digitos do ano: \n");
scanf("%d",&S);
}

dia= (((2.6*M-0.2)/1)+D+A+(A/4)+(S/4)-2*S);
dia=dia%7;

if(dia==0){
printf("\nDia: Domingo\n");
}
if(dia==1){
printf("\nDia: Segunda-Feira\n");
}
if(dia==2){
printf("\nDia: Terca-Feira\n");
}
if(dia==3){
printf("\nDia: Quarta-Feira\n");
}
if(dia==4){
printf("\nDia: Quinta-Feira\n");
}
if(dia==5){
printf("\nDia: Sexta-Feira\n");
}
if(dia==6){
printf("\nDia: sábado\n");
}

if(M==11){
printf("Mes: Janeiro\n");
}
if(M==12){
printf("Mes: Fevereiro\n");
}
if(M==1){
printf("Mes: Marco\n");
}
if(M==2){
printf("Mes: Abril\n");
}
if(M==3){
printf("Mes: Maio\n");
}
if(M==4){
printf("Mes: Junho\n");
}
if(M==5){
printf("Mes: Julho\n");
}
if(M==6){
printf("Mes: Agosto\n");
}
if(M==7){
printf("Mes: Setembro\n");
}
if(M==8){
printf("Mes: Outubro\n");
}
if(M==9){
printf("Mes: Novembro\n");
}
if(M==10){
printf("Mes: Dezembro\n");
}

printf("Ano: %d%d\n",A,S);
printf("--------------------------------------------\n");

count++;
}

system("pause");
return 0;
}

Grata a quem ajudar!

Editado por dif
Usar a tag CODE para postar seus códigos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesta linha do seu código, troque o %d da variável S por %02d F5Rua4D.gif:


printf("Ano: %d%d\n",A,S);

Espero ter ajudado GbhmuXl.gif.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×