我做了一个程序,告诉你你的黄道标志。它可以编译,但是当我尝试运行它时,Windows冻结。
这是我使用的代码:http://codepad.org/V4WAIavW
#include <stdlib.h>
#include <stdio.h>
int main()
{
int d, m;
printf("Bienvenido al calculador de signo zodiacal 3000\n");
printf("Por favor introduzca su mes de nacimiento\n");
scanf("%i", &m);
system ("pause");
switch(m)
{
case 1:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>20)
printf("Su signo es acuario\n");
else
printf("Su signo es capricornio\n");
break;
case 2:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>19)
printf("Su signo es piscis\n");
else
printf("Su signo es acuario\n");
break;
case 3:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>20)
printf("Su signo es Aries\n");
else
printf("Su signo es piscis\n");
break;
case 4:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>20)
printf("Su signo es tauro\n");
else
printf("Su signo es aries\n");
break;
case 5:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>21)
printf("Su signo es geminis\n");
else
printf("Su signo es tauro\n");
break;
case 6:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>21)
printf("Su signo es cancer\n");
else
printf("Su signo es geminis\n");
break;
case 7:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>23)
printf("Su signo es leo\n");
else
printf("Su signo es cancer\n");
break;
case 8:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>23)
printf("Su signo es Virgo");
else
printf("Su signo es leo");
break;
case 9:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>23)
printf("Su signo es libra\n");
else
printf("Su signo es virgo\n");
break;
case 10:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>23)
printf("Su signo es escorpio\n");
else
printf("Su signo es libra\n");
break;
case 11:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>22)
printf("Su signo es sagitario\n");
else
printf("Su signo es escorpio\n");
break;
case 12:
printf("Introduzca su dia de nacimiento\n");
scanf("%i", d);
if (d>21)
printf("Su signo es capricornio\n");
else
printf("Su signo es sagitario\n");
break;
system ("pause");
}
}
我尝试使用“ if”代替“ switch”,但是它也冻结了。
最佳答案
您的scanf()
调用应将指针传递到内存中将存储输入数据的位置。
例如:
scanf("%i", &d); // &d is the location in memory of d
关于c - 当我尝试运行我的十二生肖程序时,Windows卡住,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7780622/