Day 6 c语言(函数)(P10)

 推荐网站 cplusplus.com

 练习1:

#include<stdio.h>
//自定义函数
//求2个数中最大值
int  get_max(int x,int y)
{
    if(x>y)
        return x;
    if(y>x)
        return y;
}
int main()
{
    int a=0,b=0;
    int Max=0;
    printf("请输入2个数字\n");
    scanf("%d %d",&a,&b);
    Max=get_max(a,b);
    printf("Max=%d\n",Max);
    return 0;

 

 

#include<stdio.h>
//实现2个数的调换
void Swap(int *pa,int *pb)
{
    int temp=0;
    temp=*pa;
    *pa=*pb;
    *pb=temp;
}
int main()
{
    
    int a=0,b=0;
    printf("请输入2个数字\n");
    scanf("%d %d",&a,&b);
    printf("%d %d\n",a,b);
    Swap(&a,&b);
    printf("%d %d\n",a,b);
    return 0;
}
 

 

 

 #include<stdio.h>
//打印100到200之间的素数
#include<math.h>
int is_prime(int n)
{
    int j=0;
    for(j=2;j<=sqrt(n);j++)
    {
        if(n%j==0)
        {
            return 0;
        }
    }
    return 1;
}
int main()
{
    int i=0;
    for(i=100;i<=200;i++)
    {
        //判断i是否为素数
        if(is_prime(i)==1)
        printf("%d ",i);
    }
    return 0;

 

#include<stdio.h>
//打印1000到2000年的闰年
int is_leap_year(int n)
{
    if(((n%4==0)&&(n%100!=0)||(n%400)==0))
        return 1;
    else 
        return 0;
}
int main()
{
    int year=0;
    for(year=1000;year<=2000;year++)
    {
        if(is_leap_year(year)==1)
        {
            printf("%d ",year);
        }
    }

    return 0;
}

 

#include<stdio.h>
int binary_search(int arr[],int k,int sz)
{
    //算法的实现
    int left=0;
    int right=sz-1;
    while(left<=right)
    {
        int mid = (left+right)/2;
        if(arr[mid]<k)
        {
            left=mid+1;
        }
        else if(arr[mid]>k)
        {
            right = mid-1;
        }
        else
        {
            return mid;        
        }
    }
    return -1;
}
int main()
{
    //二分查找
    //在一个有序数组中查找具体的某个数
    //如果找到返回这个数的下标,找不到返回-1
    int arr[]={1,2,3,4,5,6,7,8,9,10};
    int k = 7;
    int sz = sizeof(arr)/sizeof(arr[0]);
    //                     传递过去的是数组arr首元素的地址
    int ret = binary_search(arr,k,sz);
    if(ret == -1)
    {
        printf("找不到指定的数字\n");
    }
    else
    {
        printf("找到了,下标是:%d\n",ret);
    }
    return 0;
}

 

#include<stdio.h>
void ADD(int* p)
{
    (*p)++;
}
int main()
{
    int num=0;
    ADD(&num);
    printf("num=%d\n",num);
    ADD(&num);
    printf("num=%d\n",num);
    ADD(&num);
    printf("num=%d\n",num);
    ADD(&num);
    printf("num=%d\n",num);
    return 0;
}

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值