hai un getch ma non assegni il carattere letto alla variabile a.


Sai cosa credo , credo che hai appositamente postato il codice con quell'errore non so per
quale motivo!


non vuoi stampare i risultati in output ?

qualche correzione


codice:
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
main(){
int n,k,p,c,d,pr,fn,fk,fkn,fkn1,fn1,pow,b,i,cr;
char a,risp,si,no,ff,fnk,nk,dr,potenza,fnk1;
printf("Inserisci n");
scanf("%d",&n);
printf("Inserisci k");
scanf("%d",&k);
if(n>k){
	printf("Quale operazione vuoi effettuare?\n");
	printf("Premi 'p' per calcolare le permutazioni");
	printf("\nPremi 'd' per calcolare le disposizioni");
	printf("\nPremi 'c' per calcolare le combinazioni\n");

	fflush(stdin); // meglio metterlo
	scanf("%1s",&a); // non mi funzionava con getch()

	if(a=='p'){
	fn=1;
	for(i=1;i<=n;i++){
		fn=i*n;
	}
	printf("vuoi calcolare anche le permutazioni con ripetizioni? si/no");
	fflush(stdin);
	scanf("%c",&risp);// mancava &
	if (risp=='s'){
			fn=1;
			for(i=1;i<=n;i++){
			fn=i*n;}
			"ff";
			pr=fn/ff;
	}

	else if (a=='d'){
		fn=i;
		for(i=1;i<=n;i++){
			fn=i*n;}
		fnk=1;
		for(i=1;i<=nk;i++){
			fnk=i*nk;}
		d=fn/fnk;}
	printf("vuoi calcolare anche le disposizioni con ripetizione? si/no");
	fflush(stdin);
	scanf("%c",&risp);// mancava &
	if (risp=='s')
	{
		dr=n*k;
	}
	else if (a=='c') {
			fn=1;
			for(i=1;i<=n;i++) {
					fn=i*n;}
			fnk=1;
			for(i=1;i<=nk;i++){
				nk=(i*nk);}
			fk=1;
			for(i=1;i<=k;i++){
				fk=i*k;}
				c=fn/(fnk*fk);}
	printf("vuoi calcolare anche le combinazioni con ripetizioni? si/no");
	fflush(stdin);
	scanf("%c",&risp); //manca &
	if (risp=='s) //  prima cera si non puoi confrontare due stringhe con ==
	{
			b=n+k-1;
			fnk1=1;
			for(i=1;i<=b;i++){
			fnk1=i*fnk1;}
			fk=1;
			for(i=1;i<=fk;i++){
			fk=i*fk;}
			fn1=1;
			for(i=1;i<=fn1;i++){
			fn1=i*fn1;}
			cr=fnk1/(fk*fn1);}
	getch();
	}
}
}


SPERO CHE LA TUA NON SIA STATA UNA PRESA PER I FONDELLI ma il sospetto ce lo