[ Foro de C ]
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;
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.)