开源代码

一级目录

进制的转换

#include <stdio.h>
void two(int n);
void eight(int n);
void sixteen(int n);
int main()
{
	int x,y;
	scanf("%d %d",&x,&y);
	if(y==2)two(x);
	if(y==8)eight(x);
	if(y==16)sixteen(x); 
}

void two(int n)
{
	if(n==0)
	return;
	else
	{
		two(n/2);
		printf("%d",n%2);
	}
}

void eight(int n)
{
	if(n==0)
	return;
	else
	{
		eight(n/8);
		printf("%d",n%8);
	}
}

void sixteen(int n)
{
	int arr[20],i;
	for(i=0;1;i++)
	{
		arr[i]=n%16;
		n/=16;
		if(n==0)break;
	}
	for(;i>=0;i--)
	{
		switch(arr[i])
		{
			case 10:
				printf("A");break;
			case 11:
				printf("B");break;
			case 12:
				printf("C");break;
			case 13:
				printf("D");break;
			case 14:
				printf("F");break;
			case 15:
				printf("E");break;
			default :
				printf("%d",arr[i]);
		}
	}
	printf("\n");
}

二级目录

用递归的方式实现最大公约数的求法

#include <stdio.h>
int gcd(int x,int y);
int main()
{
	int a,b,tmp;
	scanf("%d %d",&a,&b);
	if(a<b)
	tmp=a,a=b,b=tmp;
	printf("%d",gcd(a,b));
}

int gcd(int x,int y)
{
	if(x%y==0)
	return y;
	else
	gcd(y,x%y);
}

三级目录

打印平行四边形

#include <stdio.h>
int main()
{
	int x,y;
	int i,j,k;
	scanf("%d %d",&x,&y);
	for(i=1;i<=x;i++)
	{
		for(k=0;k<x-i;k++)printf(" ");
		for(j=0;j<y;j++)
		{
			if(i==1||i==x||j==0||j==(y-1))
				printf("*");
				else
				printf(" ");
		}
			printf("\n");
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值