第八次实验任务

                                                                                                       第八次实验任务

 

上机题1:任意输入两个整数(-1000<n<10000),将两数分别反转(逆序)后两相加,相加后的结果再反转后输出

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



上机题2:求1+2!+3!+...+20!的和

递归函数即自调用函数,在函数体内部直接或间接地自己调用自己,即函数的嵌套调用是函数本身。   

#include "stdafx.h"      
int jiecheng(int a)  
{  
    int i;  
    double sum;  
    sum=1;    
    for(i=1;i<=a;i++)    
    {sum=sum*i;}  
    printf("%lf\n",sum);  
    return sum;  
}  
void main()    
{        
    double sum=0;  
    for(int i=1;i<=20;i++)  
    {  
    sum=sum+jiecheng(i);  
    }  
    printf("%lf",sum);    
}    



 

 

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

#include<stdio.h>    
int zhishu(int x)    
{    
  int i=2,a=x%i;    
  for(i;a!=0;i++){a=x%i;};    
  i=i-1;    
  if(i!=x) return 0;    
  if(i==x) return 1;    
}    
void main()    
{         
    int N,x;    
    scanf("%d",&N);    
    if(N>=2){  
    x=zhishu(N);    
    if(x==0&&N!=2){printf("N");}    
    if(x==1||N==2){printf("Y");}    
    }  
    else {printf("质数是不能小于2,请重新输入");}  
}  



 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值