我正在编写一个程序,它使用递归计算给定整数的斐波那契数。我创建了自己的函数'fibonacci',并让程序在循环中运行,如代码中所示。在斐波那契数列中使用switch语句
该程序要我使用switch语句来操作菜单(菜单是用户有两个选择要么选择查找斐波那契或退出程序),我坚持如何使用开关声明为了使用菜单。
下面是我通过Kernighan和Ritchie写了这么远
#include <stdio.h>
int fibonacci(int num);
int main(int argc, char const *argv[]) {
int choice;
int num;
int sequence;
printf("1) Calculate Fibonacci\n");
printf("2) Exit\n");
scanf("%d", &choice);
if (choice == 1)
{
do
{
printf("Input integer n :\n");
scanf("%d", &num);
if (num < 0)
{
printf("n should be a positive integer (n >= 1). Retry\n");
}
} while (num < 0);
}
if (choice == 1 && num > 0)
{
printf("Fibonacci sequence of %d terms\n", num);
'选择'开关''。 –
我建议你在没有'switch'语句的情况下先使代码正常工作。你不检查'scanf'的返回值来查看你是否有输入。而是检查未初始化的变量'choice'和'num',这些变量在'scanf'失败时是不确定的。 –