Erro ao resolver problema em c
Salve! Estou com problemas ao solucionar uma questão que me foi proposta na linguagem C. Já desenvolvi todo o código, mas os casos de teste não batem.
Questão:
A agência cearense para investigações criminais denominada OBI (Operação de Baita Investigação) notou que, a exemplo do que ocorreu na Petrobrás, muito dinheiro foi desviado dos cofres públicos do estado para pagamento de propina a políticos nos últimos anos, especialmente pelo partido QU (Quadrilha Unida).
A investigação está em andamento e a agência recrutou você para converter alguns valores que ficaram com caracteres estranhos após terem sidos descriptografados dos arquivos originais. Sua tarefa neste caso é relativamente simples: basta retirar todos os caracteres estranhos (não numéricos) de cada um dos dois valores disponíveis. Apenas tome o cuidado de separar os primeiros 11 dígitos do primeiro valor. Eles correspondem ao CPF do corrupto :)
Entrada: A entrada é composta por duas linhas, cada uma delas contendo entre 1 e 60 caracteres ('0'-'9' e outros caracteres não numéricos ou, pelo menos, 1 caracter '0'-'9') e no máximo um ponto ".". Desconsiderando os caracteres não numéricos, o número final não deve ter mais de 17 caracteres (incluindo o ponto decimal).
Exemplo de entrada:
7a5a6adfg4a4adsfgsd9fg6aa904aa91#$%1
42**&7746.67abc$
Saída: Imprima o CPF do corrupto e o valor que foram desviados dos cofres públicos.
Exemplo de saída
cpf 75644969049
propina 11427746.67
Meu código abaixo:
#include<stdio.h>
#include<string.h>
int main(){
char caract[60];
char caract2[60];
char cpf[10];
char propina[15];
int i=0, j=0;
scanf("%s", caract);
for(i = 0; caract[i] != '\0'; i++){
if(caract[i] >= 48 && caract[i] <= 57){
if(j<11){
cpf[j] = caract[i];
}
j++;
}
}
cpf[11] = '\0';
cpf[12] = '\0';
scanf("%s", caract2);
for(i = 0; caract2[i] != '\0'; i++){
if((caract2[i] >= 48 && caract2[i] <= 57) || caract2[i] == 46){
propina[j] = caract2[i];
j++;
}
}
cpf[10] = '\0';
printf("cpf %s", cpf);
printf("propina %s", propina);
}Discussão (1)
Carregando comentários...