第八次上级报告

来源:互联网 发布:淘宝女包店铺介绍 编辑:程序博客网 时间:2024/05/16 07:26

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

我的程序:

# include<stdio.h>   void main()  {      int a,b,c,i=0,j=0,k=0;      printf("请输入2个数:\n");      scanf("%d%d",&a,&b); if(a%10==0)a=a/10;    while(a!=0){          i=a%10+i*10;          a=a/10;}  if(b%10==0)b=b/10;    while(b!=0){          j=b%10+j*10;          b=b/10;}  c=i*j;    while(c!=0){         k=c%10+k*10;          c=c/10;}     printf("运算后的值为:\n%d\n",k);  }  



运行图:

 

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

我的程序:

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


运行图:

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

我的程序:

#include<stdio.h>     void main()  {      int n,i,y,a=1;  while(a){    printf("请输入一个正整数:\n");      scanf("%d",&n);  n=n+1;if(n<2)printf("质数是不能小于2,请重新输入\n");elsebreak;}    {for(i=2;i<n;i++)      {          y=n%i;          if(y==0)              break;      }      if(i==n)          printf("yes\n");      else          printf("no\n");  }}  



运行图: