第11堂作业

来源:互联网 发布:ubuntu备份文件命令 编辑:程序博客网 时间:2024/04/28 16:19
作业题1:
任意输入一个整数如 123456(或-123456),逆序输出;654321(或-654321)
#include<stdio.h>void main(){int x,y=0;printf("请输入一个整数:");scanf("%d",&x);while(x!=0){y=y*10+x%10;x=x/10;}printf("该数的逆序数为:%d",y);}


 

 


-----------------------分割线-----------------------
作业题2:
费式数列(Fibonacci)的前两项为1、1,之后的每一项为前两项之和,即Fn =Fn-1 +Fn-2,费式数列的前10项为:1 、1、2、3、5、8、13、21、34、55。输入一个正数数n ( n <= 40 ),计算出费式数列的第n项之值并输出。

要求:利用递归函数
 
 
#include<stdio.h>int F(int x);void main(){int n;printf("请输入一个小于40的正整数:");scanf("%d",&n);printf("费式数列的第%d项为%d",n,F(n));}int F(int x){if(x==1||x==2)return 1;return F(x-1)+F(x-2);}

 
 
 

-----------------------分割线-----------------------
作业题3:
编写程序,输入一个正整数N,如果N 是质数则输出Y,否则输出N。:
要求:利用自定义函数P(N)检查N 是不是质数
 
#include<stdio.h>#include<math.h>char P(int x);void main(){int x;printf("请输入一个正整数,如果N 是质数则输出Y,否则输出N:");scanf_s("%d",&x);printf("%c",P(x));}char P(int x){int i;char a='N',b='Y';if(x==0||x==1)return a;for(i=2;i<=sqrt((double)x);i++)   {if(x%i==0) {return a; }}return b;}

 
原创粉丝点击