第八次上机报告

来源:互联网 发布:g20杭州淘宝 编辑:程序博客网 时间:2024/05/19 20:39

                                   第八次上机报告

                                                      李娉婷 120705121

 上机题1:任意输入两个大于10的整数,将两数分别反转(逆序)后两相乘,如果最后一位是0去掉0,再反转后输出;
 
                                            

#include<stdio.h>  int fzh(int x);  void main()  {      int x,y,n,t;     printf("请输入2个大于10的整数:");      scanf("%d%d",&x,&y);n=fzh(y)*fzh(x);    printf("fzh(y)*fzh(x)=%d",n);  }    int fzh(int x)     {   int y=0;        while(x!=0)      {         y=y*10+x%10;     x=x/10;     }   return y;  }


 

-----------------------分割线-----------------------
上机题2:假设一个数列K表的前两项是0,1,而之后的每一项为KN
= 2 * KN-1+3 KN-2,输入一个正整数N,计算和输出该数列的第Ñ项
要求:利用递归函数

 

# include<stdio.h>     int dg(int b);    void main()    {       int n,c;       printf("请输入一个数:\n");        scanf("%d",&n);             {c=dg(n);       printf("第n项的值为:%d\n",c);}    }    int dg(int b)    {        int a;        if(b==1||b==2)            a=b-1;        else            a=2*dg(b-1)+3*dg(b-2);        return a;    }    


-----------------------分割线-----------------------
上机题3:编写程序,输入一个正整数n,如果n+1是质数则输出Yes,否则输出No。另,由于最小的质数是2,所以先检查它是否小于2,如果是的话,则提示“质数是不能小于2,请重新输入”
要求:利用自定义函数z(n)检查是不是质数

 

 


#include "math.h"    #include <stdio.h>  int fun(int x);void main()    {        int i,b,m;        printf("请输入一个整数:");    scanf("%d",&m);while(m<2){printf("质数是不能小于2,请重新输入\n");    printf("请输入一个整数:");    scanf("%d",&m);}fun(m);   }      int fun(int x){int i;for(i=2;i<x+1;++i)if((x+1)%i==0)                break;if(i>=(x+1))printf("Y\n");    elseprintf("N\n");return 0;}


 


 

 

原创粉丝点击