Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

помогите с кодом на языке си

Неизвестно Профи (829), закрыт 4 года назад
Я написал этот код но он не работает. Я начинающий поэтому не судите строго. Если не понятно у меня 2 бинарного числа и пользователь должен выбрать какой бит этих чисел и программа должна toggle делать этих выбранных битов

#include
#include

int GetalA = 0b01010101;
int GetalB = 0b00110010;

int bitje1 = 0b00000001;
int bitje2 = 0b00000010;

int uitkomst1A, uitkomst1B;
int uitkomst2A, uitkomst2B;

// bitje die gekozen wordt

int togglebitje;

void print_binary(int number);

int main()
{

printf("Welk bitje van 0b01010101 wil je togglen? \n");
scanf ("%d, &togglebitje");

switch (togglebitje)
{

case 1: /// case 1 is de manier van week 3 die werkt met de stukje code bij de regel 125 ...132 case 2 tot en met 8 heb ik nog niet op deze manier gedaan want idk of dat perse zo moet want case 1 werkt nu niet
uitkomst1A = GetalA^bitje1;
uitkomst1B = GetalB^bitje1;

printf("Resultaat van A is:", uitkomst1A);
printf("\nBinaire uitkomst is:");
print_binary(uitkomst1A);

printf("Resultaat van B is:", uitkomst1B);
printf("\nBinaire uitkomst is:");
print_binary(uitkomst1B);
break;

case 2:
uitkomst2A = GetalA^bitje2;
uitkomst2B = GetalB^bitje2;

printf("Resultaat van A is:", uitkomst2A);
printf("\nBinaire uitkomst is:");
print_binary(uitkomst2A);

printf("Resultaat van B is:", uitkomst2B);
printf("\nBinaire uitkomst is:");
print_binary(uitkomst2B);
break;

}

return 0;
}

void print_binary(int number)
{
if (number)
{
print_binary(number >> 1);
putc((number & 1) ? '1' : '0', stdout);
}
}
Лучший ответ
Павел Михаловский Просветленный (32398) 4 года назад
Я бы не советовал копипастить код (я сомневаюсь, что вы по доброй воле пишите на Нидерландском) и пытаться вникнуть самому.
А так, работает. Число выводится, бит выбирается
НеизвестноПрофи (829) 4 года назад
Я когда нажимаю на кнопку build and run и выбираю число то все останавливается и пишется process returned -1073741819 (0xC0000005) execution time: 2.174
press any key to continue
Павел Михаловский Просветленный (32398) scanf ("%d, &togglebitje"); надо заменить на scanf ("%d", &togglebitje);
Остальные ответы
クマのプーさん Мудрец (15499) 4 года назад
чего не работает-то? всё норм
Похожие вопросы