sono riuscito con un escamotage, a fare comparire il %. Come hai detto tu putchar stampa un carattere alla volta, cosi ho messo un singolo if con le stesse "premesse" per il putchar, e un altro per la parentesi che andava dopo. Ho controllato l'effetto a video ed è quello desiderato.
Ho anche risolto quel fatto che si chiudeva la console, ho cancellato l'addizione aggiunta e lo rifatta, si vede che avevo sbagliato qlks.
Codice:
#include<stdio.h>
int a,b,c,d,e,f,g,h,i,l,m,n,o,p;
float a1=4.40,b1=2.80,c1=4.40,d1=2.60,e1=6.00,f1=2.10,g1=2.30,h1=2.30,i1=3.20,l1=2.60,m1=2.20;
float a2=29.30,b2=20.00,c2=32.40,d2=17.50,e2=42.80,f2=13.20,g2=15.10,h2=15.10,i2=21.90,l2=17.50,m2=14.50;
float a3=9.50,b3=6.50,c3=10.50,d3=5.70,e3=13.90,f3=4.30,g3=4.90,h3=4.90,i3=7.10,l3=5.70,m3=4.70,n3=27,o3=20,p3=36;
float punti,guadagno,livello,ccs,cp,pp,pt; /* CCS = costo complessivo spedizione; CP=costo parziale PP=punti precedenti pt=punti totali*/
int main()
{
printf("Calcolo punti , ricavo e livello FM Group\n");
printf("\nInserisci il numero dei profumi per uomo/donna venduti\n");
scanf("%d",&a);
printf("Inserisci il numero dei profumi per bambino venduti\n");
scanf("%d",&b);
printf("Inserisci il numero dei profumi ai feromoni venduti\n");
scanf("%d",&c);
printf("Inserisci il numero dei dopobarba venduti\n");
scanf("%d",&d);
printf("Inserisci il numero dei profumi di lusso venduti\n");
scanf("%d",&e);
printf("Inserisci il numero dei deodoranti venduti\n");
scanf("%d",&f);
printf("Inserisci il numero dei roll-on venduti\n");
scanf("%d",&g);
printf("Inserisci il numero dei doccia schiuma venduti\n");
scanf("%d",&h);
printf("Inserisci il numero delle schiume da barba vendute\n");
scanf("%d",&i);
printf("Inserisci il numero delle creme corpo vendute\n");
scanf("%d",&l);
printf("Inserisci il numero delle creme mani vendute\n");
scanf("%d",&m);
printf("Inserisci il numero dei campionari normali ordinati\n");
scanf ("%d",&n);
printf("Inserisci il numero dei campionari di lusso ordinati\n");
scanf ("%d",&o);
printf("Inserisci il numero dei campionari con i due profumi ordinati\n");
scanf ("%d",&p);
punti=(a*a2)+(b*b2)+(c*c2)+(d*d2)+(e*e2)+(f*f2)+(g*g2)+(h*h2)+(i*i2)+(l*l2)+(m*m2);
guadagno=(a*a1)+(b*b1)+(c*c1)+(d*d1)+(e*e1)+(f*f1)+(g*g1)+(h*h1)+(i*i1)+(l*l1)+(m*m1);
cp=(a*a3)+(b*b3)+(c*c3)+(d*d3)+(e*e3)+(f*f3)+(g*g3)+(h*h3)+(i*i3)+(l*l3)+(m*m3)+(n*n3)+(o*o3)+(p*p3);
if (punti>363) ccs=cp;
else ccs=cp+(15);
printf("inserisci il numero di punti totalizzati precedentemente\n");
scanf("%f",&pp);
pt=pp+punti;
printf("il costo complessivo della spedizione e' %.2f euro\n",ccs);
printf("hai guadagnato %.2f euro\n",guadagno);
printf("il totale dei punti guadagnati con quest'ordine e' %.2f\n",punti);
printf("il totale dei punti e' %.2f\n",pt);
if (300>punti) printf("il tuo livello e' 0");
if (300>punti) putchar('%');
if ((300)<=punti && punti<=(1199)) printf("il tuo livello e' 3");
if ((300)<=punti && punti<=(1199))putchar('%');
if ((300)<=punti && punti<=(1199))printf(" (magnolia)");
if ((1200)<=punti && punti<=(3599)) printf("il tuo livello e' 6" );
if ((1200)<=punti && punti<=(3599))putchar('%');
if ((1200)<=punti && punti<=(3599))printf(" (magnolia)");
if ((3600)<=punti && punti<=(7199)) printf("il tuo livello e' 9");
if ((3600)<=punti && punti<=(7199))putchar('%');
if ((3600)<=punti && punti<=(7199))printf(" (magnolia)");
if ((7200)<=punti && punti<=(11999)) printf("il tuo livello e' 12");
if ((7200)<=punti && punti<=(11999))putchar('%');
if ((7200)<=punti && punti<=(11999))printf(" (magnolia d'argento)");
if ((12000)<=punti && punti<=(20399)) printf("il tuo livello e' 15");
if ((12000)<=punti && punti<=(20399))putchar('%');
if ((12000)<=punti && punti<=(20399))printf(" (magnolia d'argento)");
if ((20400)<=punti && punti<=(29999)) printf("il tuo livello e' 18");
if ((20400)<=punti && punti<=(29999))putchar('%');
if ((20400)<=punti && punti<=(29999))printf(" (magnolia d'argento)");
if ((30000)<=punti) printf("il tuo livello e' 21");
if ((30000)<=punti) putchar('%');
if ((30000)<=punti) printf(" (magnolia d'oro)");
getchar();
getchar();
return 0;
}