| 
 | 
 
 
发表于 2020-12-8 22:09:03
From FishC Mobile
|
显示全部楼层
|阅读模式
 
 
 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
编写完成-个“菜单”的功能,提供3种途径选择; 
 
选项1:求水仙花数(100-999) 
 
选项2:找出2-n之间所有的素数。 
 
国收选项3:输出斐波那契数列的第n项。 
 
主函数内提示菜单内容:让用户进行选择菜单。 
 
如果选择1,则执行出的结果是选项1;如果选择2,则执行出的结果是选项2;如果选择3,则执行出的结果是选项3;
- #include <stdio.h>
 
 - int f(int n);
 
 - int main()
 
 - {
 
 -         int bai, shi, ge, n, num;
 
 -         printf("请选择功能: 1、100 - 999的水仙花数,2、2 - n之间所有的素数,3、输出斐波那契数列的第n项\n");
 
 -         scanf("%d", &num);
 
 -         switch (num)
 
 -         {
 
 -         case 1:
 
 -         {
 
 -                 for (n = 100;n <= 999;n++)  /*整数的取值范围*/
 
 -                 {
 
 -                         bai = n / 100;
 
 -                         shi = (n - bai * 100) / 10;
 
 -                         ge = n % 10;
 
 -                         if (n == bai * bai * bai + shi * shi * shi + ge * ge * ge)  /*各位上的立方和是否与原数n相等*/
 
 -                                 printf("%d ", n);
 
 -                 }
 
 -                 printf("\n");
 
 -                 break;
 
 -         }
 
 -         case 2:
 
 -         {
 
 -                 int i, j, k = 0;
 
 -                 printf("请输入区间的上限:");
 
 -                 scanf("%d", &n);
 
 -                 for (i = 2;i <= n;i++)
 
 -                 {
 
 -                         for (j = 2;j < n / 2;j++)
 
 -                         {
 
 -                                 if (i % j == 0)
 
 -                                         break;
 
 -                         }
 
 -                         if (i == j)
 
 -                         {
 
 -                                 printf("%d ", i);
 
 -                                 k++;
 
 -                         }
 
 -                 }
 
 -                 printf("\n");
 
 -                 break;
 
 -         }
 
 -         case 3:
 
 -         {
 
 -                 printf("求斐波拉契第几项?");
 
 -                 scanf("%d", &n);
 
 -                 printf("%d\n", f(n));
 
 -         }
 
 -         }
 
 - }
 
 - int f(int n)
 
 - {
 
 -                 int sum = 0;;
 
 -                 if (n >= 3)
 
 -                 {
 
 -                         sum = f(n - 1) + f(n - 2);
 
 -                 }
 
 -                 else
 
 -                 {
 
 -                         sum = 1;
 
 -                 }
 
 -                 return sum;
 
 - }
 
  复制代码 
 
 
 |   
 
 
 
 |