第十一堂课后作业
2013-05-29 19:28
162 查看
第十一堂课后作业
作业题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; }
截图
相关文章推荐