我想在开关盒中制作开关盒并进行开关。如果记得我们可以使用if else使开关盒移动到第一个开关盒。那个
这是我现在的代码
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
int main() {
int a,b;
system("cls");
printf("Cara Membuat daftar Pertanyaan!\n");
printf("1. Matematika\n");
printf("2. Bahasa indonesia\n");
printf("3. Bahasa Inggris\n");
printf("4. Kewarganegaraan\n");
printf("0. Exit \n");
printf("Masukan no dari 1-4 (0) : ");
scanf("%d", &a);
switch(a)
{
case 1 : system("cls");
printf("1. Perkalian\n");
printf("2. Pertambahan\n");
printf("3. Perkurangan\n");
printf("4. Pembagian\n");
printf("5. Kembali \n");
printf("Masukan no dari 1-5 : ");
scanf("%d",&b);
if( b == 5)
{
switch(a);
}
else {
break;
}
break;
default : printf("Error");
}
return 0;
}
答案 0 :(得分:1)
将所有内容放在while
循环中,只允许循环运行Kembali
选项。您也可以将其实现为递归函数,但这可能会变得复杂。
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
int
main (void)
{
int a;
int b;
int loop = 1;
while (loop) {
loop = 0;
system ("cls");
printf ("Cara Membuat daftar Pertanyaan!\n");
printf ("1. Matematika\n");
printf ("2. Bahasa indonesia\n");
printf ("3. Bahasa Inggris\n");
printf ("4. Kewarganegaraan\n");
printf ("0. Exit \n");
printf ("Masukan no dari 1-4 (0) : ");
scanf ("%d", &a);
switch (a) {
case 0: {
printf ("Exited\n");
break;
}
case 1: {
system ("cls");
printf ("1. Perkalian\n");
printf ("2. Pertambahan\n");
printf ("3. Perkurangan\n");
printf ("4. Pembagian\n");
printf ("5. Kembali \n");
printf ("Masukan no dari 1-5 : ");
scanf ("%d", &b);
if (b == 5) {
loop = 1;
}
break;
}
default: {
printf ("Error\n");
break;
}
}
}
return 0;
}