- 博客(8)
- 资源 (3)
- 收藏
- 关注
原创 子集枚举程序
子集枚举程序#include<stdio.h>#include<string.h>#define SetSS(x) SubSets(x)#define GetSS() SubSets(-1)int *SubSets(int n){ static int sn=0; static int ssn=0,ssni=0; static int p[30]; int i,a; //printf("%d %x %d\n",sn,ssn,ssni); if(n>0)
2022-01-18 10:29:20
267
原创 最短的求最大公约数的C语言代码
#include<stdio.h>int gcd(int a, int b);int main(){int a,b;scanf("%d%d",&a,&b);printf("%d\n",gcd(a,b));return 0;}int gcd(int a, int b){ return a&&b?gcd(b,a%b):a^b;}
2021-10-06 12:33:15
68
原创 素因子分解程序(极简)
素因子分解程序(极简)#include<stdio.h>int main(){int a,m;scanf("%d",&m);for(a=2;m!=1;)if(m%a==0) {printf("%d\n",a); m/=a;} else a++;return 0;}
2021-09-20 10:18:23
184
原创 只用一重循环实现排序
#include<stdio.h>int main(){int n,m,i,j,a[20],t;scanf("%d",&n);for(i=0;i<n;i++) scanf("%d",&a[i]);//输入for(j=i=0,m=n-1;i<m*m;j=(++i)%m) //排序if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}for(i=0;i<n;i++) printf("%d\n",a[
2021-09-20 10:12:05
161
原创 计算组合数C(n,m)的C语言代码
这里写自定义目录标题1.//要求输入参数n>=m>=0//可以证明计算中a的中间值不会超过C(n,m)*m,因此能尽量计算大一些的组合数(中间值超出int表示范围会导致计算错误)int cnm(int n, int m)//n>=m>=0{ int i,a; if(m+m>n) m=n-m;//be faster for(i=1,a=1;i<=m;i++,n--) a=a*n/i; return a;}2.//要求输入参数n>=m>=
2021-06-14 13:09:56
2819
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人