第十一堂课后作业
作业题1:
任意输入一个整数如 123456(或-123456),逆序输出;654321(或-654321)
#include <stdio.h>
int fn(int x);
void main()
{
int num,a;
printf("请输入整数:");
scanf("%d",&num);
printf("%d\n",fn(num));
}
int fn(int x)
{
int y=0;
while(x!=0)
{
y=y*10+x%10;
x=x/10;
}
return 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>
void main()
{
int fib(int n);
int n;
printf("请输入需要的数字:");
scanf("%d",&n);
printf("fib(%d)=%d\n",n,fib(n));
}
int fib(int n)
{
int result;
if (n<=0)
printf("input error!\n");
else
if (n==1||n==2)
result=1;
else
result=fib(n-1)+fib(n-2);
return(result);
}
-----------------------分割线-----------------------
作业题3:
编写程序,输入一个正整数N,如果N 是质数则输出Y,否则输出N。
#include <stdio.h>
void main()
{
int i,m;
printf("请输入一个整数:");
scanf("%d",&m);
for(i=2;i<m;i++)
if(m%i==0)
break;
if(i>=m)
printf("Y\n");
else
printf("N\n");
}