第十一课堂后作业
李娉婷 120705121
作业题1:
任意输入一个整数如 123456(或-123456),逆序输出;654321(或-654321)
#include<stdio.h>
void main()
{
int a,b=0;
printf("请输入一个整数:");
scanf("%d",&a);
while(a!=0)
{b=b*10+a%10;
a=a/10;
}
printf("%d",b);
}
-------------------分割线-----------------------
作业题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 fun(int a);
void main()
{
int b,i;
printf("输入一个正整数:");
scanf("%d",&b);
while(b>40)
{ printf("输入错误");
printf("请输入一个正整数:");
scanf("%d",&b);
}
i=fun(b);
printf("费式数列的第%d项的值为;%d\n",b,i);
}
int fun(int d)
{int a;
if(d==1||d==2)
a=1;
else
a=fun(d-1)+fun(d-2);
return a;
}
-----------------------分割线-----------------------
作业题3:
编写程序,输入一个正整数N,如果N 是质数则输出Y,否则输出N。:
要求:利用自定义函数P(N)检查N 是不是质数
#include<stdio.h>
int fun(int a);
void main()
{
int b,i;
printf("输入一个正整数:");
scanf("%d",&b);
i=fun(b);
}
int fun(int d)
{
int a;
for(a=2;a<=d;++a)
if(d%a==0)
break;
if(a>=d)
printf("Y\n");
else
printf("N\n");
return 0;
}