习题二:编写一个非递归函数来计算n!
2008-12-01 16:47
232 查看
#include <stdio.h>
// 试编写一个非递归函数来计算n!,并上机测试函数的正确性。
void main()
{
int n, i=2;
int ret = 1;
printf("This program is used to compute n!/n");
while (1)
{
printf("Please Input a nonnegative integer number n:/n");
scanf("%d", &n);
if (n == 0 || n == 1)
{
;
}
else if (n > 1)
{
for(; i<=n; i++)
{
ret *= i;
}
}
else
{
printf("Wrong Input!/n");
return;
}
printf("%d! = %d/n",n, ret);
}
}
遇到的一个问题是:如果输入一个浮点数,则会出现错误,如何解决?
// 试编写一个非递归函数来计算n!,并上机测试函数的正确性。
void main()
{
int n, i=2;
int ret = 1;
printf("This program is used to compute n!/n");
while (1)
{
printf("Please Input a nonnegative integer number n:/n");
scanf("%d", &n);
if (n == 0 || n == 1)
{
;
}
else if (n > 1)
{
for(; i<=n; i++)
{
ret *= i;
}
}
else
{
printf("Wrong Input!/n");
return;
}
printf("%d! = %d/n",n, ret);
}
}
遇到的一个问题是:如果输入一个浮点数,则会出现错误,如何解决?
相关文章推荐
- 通过编写递归函数,编写c程序从键盘中输入一个数字和计算符号,算出该数字的和或者是积
- Java实训——编写一个窗体程序,用于计算一元二次方程。
- 稀疏矩阵A和B,其行数和列数对应相等,编写一个程序,计算A和B之和,假设稀疏矩阵采用三元组表示
- 【Java编程】编写一个计算N个整数平均值的程序
- 习题8.3 编写一个函数,其唯一的形参和返回值都是istream&类型.该函数一直读取到到大文件结束符为止,,,,,,并返回该流
- C#--第2周实验--任务四--编写一个控制台应用--分别使用for,while,do-while循环语句计算 n!
- 以面向对象方式编写一个计算电话费的程序
- 黑马程序员---------------------编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期, * 程序计算这一天是星期几,并且计算出是一年中的第几天
- 黑马程序员 测试题:编写程序,该程序启动后用户可以按“yyyy-MM-dd”的格式输入一个日期,程序计算这一天是星期几,并且计算出是一年中的第几天
- 编写一个程序来计算这两个序列不断变化的总和,直到达到某个次数。让用户交互地输入这个次数。
- 编写一个程序,实现设置上月、本月电表读数,显示上月、本月电表读数,计算并显示本月用电数。假设每度电的价格为1.2元,计算并显示本月电费。
- 编写一个程序,计算多少年后清空账户
- Qt5编写的一个推力传感器静态性能计算程序
- [4.21]编写一个程序,已有若干个学生的数据,包括学号、姓名、成绩、要求输出这些学生的数据并计算出学生人数和平均成绩(要求将学生人数和总成绩用静态数据成员表示)。
- 编写一个程序,实现设置上月、本月电表读数,显示上月、本月电表读数,计算并显示本月用电数。 假设每度电的价格为1.2元,计算并显示本月电费
- 写一个递归函数,输入一个非整数,返回组成它的数字之和。编写逆置函数,用递归实现,不能用C库函数。
- 编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是 100 的程序,并输出所有的可能性
- 编写一个java程序,从1加到100,每做一次加法,就休眠1秒,当程序运行过程中,杀死这个程序。 再次运行,还能从上次的计算结果继续下去
- 一个养狗场有4只狗,体重分别为 花花:4.5kg;白白:5.6kg;黑黑:78kg;红红:9.0kg;请编写一个程序,可以计算他们的平均体重,可以找出体重最大和体重最小的狗的名字.
- 用C语言编写一个计算薪水的程序