[ Foro de C ]

Me podrian hacer un resumen general sobre un codigo

30-Nov-2021 17:58
Invitado (Ferx)
1 Respuestas

Me dejaron de tarea un resumen general sobre un código me podrían ayudar en la parte del strcmp sobre lo que se está haciendo.

#include<stdio.h>
#include<string.h>

int main(){
int can[100], i=0, j=0, c=0, op;//op=opcion c=constante can= cantidad
float t=0, sb[100], p[100]; //total=t sb=subtotal p=precio
char cb[100][100]; //cb= codigo de barras
char n[100][100];// n=nombre


printf("\t BIENVENIDO A *Abarrotes San Aparicio SA de CV* \t");

do{

printf("\n\n 1. QUIERO AGREGAR UN PRODUCTO ");
printf("\n\n 2. DESGOSAR LISTADO DE PRODUCTOS");// esta parte es el menu de opciones
printf("\n\n 3. TERMINAR PROGRAMA ");
      scanf("%d", &op);
     
   
      switch(op){

case 1:

printf("CODIGO DEL PRODUCTO (CODIGO DE BARRAS):");
scanf("%s", &cb[j]);
printf("NOMBRE DEL PRODUCTO(resivo):");
scanf("%s", &n[j]);// estas son las caracteristicas de la compra
printf("PRECIO:");
scanf("%f", &p[j]);
printf("CANTIDAD:");
scanf("%d", &can[j]);
c=0;


for(i=0;i<j;i++)
{
strcmp(cb[j], cb[j-i-1]);
if(strcmp(cb[j], cb[j-i-1])==0){
c++;
}  
       }
if(c!=0){
printf(" <==== PRODUCTO AGREGADO ====>\n");
}  
    else{
j++;
   }

break;

case 2:

t=0;
for(i=0;i<=j-1;i++){
printf("<====== COMPRA %d =====>\n", i);
printf("CODIGO DE BARRAS:%s\n", cb[i]);
printf("NOMBRE DEL PRODUCTO (resivo):%s\n", n[i]);
printf("PRECIO:%f\n", p[i]);
printf("CANTIDAD:%d\n", can[i]);
sb[i] = p[i] * can[i];
printf("SUBTOTAL :%f\n", sb[i]);
t = t + sb[i];
printf(" ====================> \n");
}
printf("EL TOTAL DE LAS COMPRAS SON:%f\n", t);

break;


case 3:
printf("REGRESE PRONTO A *Abarrotes San Aparicio* ");
break;
   

}

}while(op!=3);

return 0;


02-Dec-2021 13:05
Invitado (Nacho)

La función "strcmp" sirve para comparar dos cadenas de texto.

Lo tienes en la referencia de C que acompaña a este mismo sitio web:

https://aprendeaprogramar.com/referencia/view.php?f=strcmp&leng=C
 






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)