Guten Nachmittag, liebes Forum!
Ich sitze schon seit einiger zeit vor einem Problem:
Das einlesen einer char variable
Unabhängig vom Programmbeispiel rattert das Programm nach dem zweiten scanf() durch!
Ich benutze dev-cpp.
Warum
Ich sitze schon seit einiger zeit vor einem Problem:
Das einlesen einer char variable
Unabhängig vom Programmbeispiel rattert das Programm nach dem zweiten scanf() durch!
Ich benutze dev-cpp.
Warum
PHP:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void printbin(int in, int size);
int scanbin(int size);
int main(int argc, char *argv[])
{
int a, b, c;
char op='\0', in='\0';
printf("Format der 1.Zahl: h,b,d: ");
scanf("%c", &in);
switch(in){
case 'h':
scanf("%x", &a);
break;
case 'b':
a=scanbin(8);
break;
case 'd':
scanf("%i", &a);
break;
}
printf("Operator: &,|,^(x): ");
scanf("%c", &op);
printf("\nFormat der 2.Zahl: h,b,d: ");
scanf("%c", &in);
switch(in){
case 'h':
scanf("%x", &b);
break;
case 'b':
b=scanbin(8);
break;
case 'd':
scanf("%i", &b);
break;
}
// system("cls");
switch(op){
case '&':
printf("\n\nc=a&b\n\n ");
printbin(a,8);
printf(" = %i\n& ", a);
printbin(b,8);
printf(" = %i\n------------------------------\n ", b);
c=a&b;
printbin(c,8); printf(" = %i\n\n\n\n", c);
break;
case 'x':
printf("\n\nc=a^b\n\n ");
printbin(a,8);
printf(" = %i\n^ ", a);
printbin(b,8);
printf(" = %i\n------------------------------\n ", b);
c=a^b;
printbin(c,8); printf(" = %i\n\n\n\n", c);
break;
case '|':
printf("\n\nc=a|b\n\n ");
printbin(a,8);
printf(" = %i\n| ", a);
printbin(b,8);
printf(" = %i\n------------------------------\n ", b);
c=a|b;
printbin(c,8); printf(" = %i\n\n\n\n", c);
break;
}
system("PAUSE");
return 0;
}
void printbin(int in, int size)
{
int i,bin[size];
for(i=0; i<size;i++){
bin[i]=in%2;
in/=2;
}
for(i=size-1;i>=0;i--){
printf("%i", bin[i]);
if(i%4==0)
printf(" ");
}
}
int scanbin(int size)
{
int i, bin[size], sum=0;
for(i=size-1;i>=0;i--)
scanf("%i", &bin[i]);
for(i=0;i<size;i++)
sum += bin[i]*pow(2,i);
return sum;
}