作者com5566 (com5566)
看板C_and_CPP
标题[问题] 不知道为什麽回圈不停
时间Sun Mar 15 19:34:19 2009
如题,
附上程式码,我看了很多次,似乎没有问题
#include <stdio.h>
#include <stdlib.h>
int factorial(int);
int main()
{
int num;
do
{
printf("please input N:");
scanf("%d",&num);
if(num<1||num>10)
printf("error\n");
else
printf("%d\n",factorial(num));
}while(num!='#');
system("PAUSE");
return EXIT_SUCCESS;
}
int factorial(int n)
{
if(n==0)
return 1;
else
return n*factorial(n-1);
}
很奇怪,我输入#愈停止时,回圈不会停,我查过ACII #是35应该没问题才对阿= =
到底哪错了呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.212.32
1F:推 BSpowerx:int没办法接受#这种东西吧… 03/15 19:36
2F:推 varg:%c 03/15 19:40
3F:→ com5566:问题是没办法给两种型态,我又不想用物件多重....很不熟 03/15 19:44
4F:推 hylkevin:何谓物件多重? 03/15 19:46
5F:→ com5566:就依输入参数,决定要用哪个函数...... 03/15 19:48
6F:→ com5566:所以有没有别种方法呢? 03/15 19:49
7F:推 varg:用char array去抓再转成int就好啦 03/15 19:49
8F:→ com5566:我试试 03/15 19:52
9F:推 legnaleurc:C也不支援overload吧? 03/15 20:16
10F:推 christianSK:我猜是跟我修同一门课的同学 03/15 22:09
11F:→ christianSK:我是这样做的 用一个字串去抓输入元 在转成整数 03/15 22:10