/*
1.用标准C编程:找出整形数字1-100之间的素数,并打印出来(素数:除了1和自己本身可以被整除)
*/
#include <stdio.h>
void main()
{
int i,k,flag;
for(i=1;i<101;i++) //循环区间1-100
{
flag = 1; //设立标记,为1表示素数
for(k=2;k<i-1;k++) //遍历除1和本身之外的数
{
if(i%k==0) //判断是否还有其他可整除的数
{
flag = 0; //值为0表示不是素数
break;
}
}
if(flag ==1)
{
//printf("1-100之间的素数为:\n");
printf("%3d\n",i);
}
}
}
/*
2.用标准C编程:有两个整形变量m、n,求出这两个数的最小公倍数。
*/
#include <stdio.h>
void main()
{
int m,n,c;
printf("请输入两个数据:");
scanf("%d%d",&m,&n);
c = m % n;
if(c==0)
{
printf("m和n的最小公倍数为:%d\n",m*n/c);
}
while(c!=0)
{
c=m%n;
m=n;
n=c;
printf("两个数据的最小公倍数为:%d\n",m*n/c);
return 0;
}
}
/*
3、 用标准C编程:输出杨辉三角形的前10行:三角形的每一行是(x+y)^n的展开式各项的系数。
例如:
第一行是(x+y)^0,其系数为1;
第二行是(x+y)^1,其系数为1;
第三行是(x+y)^2,其展开式为x2+2xy+y2,系数分别为1,2,1;
直观形式如下:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
*/
#include <stdio.h>
void main()
{
int a[10][10]; //定义10*10的二维数组
int i,j; //两个循环变量
for(i=0;i<10;i++)
{
a[i][0]=1; //第一列都为1
a[i][i]=1; //对角线都为1
}
for(i=2;i<10;i++)
for(j=1;j<i;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];//每个数是上面两数之和
for(i=0;i<10;i++) //循环输出杨辉三角前10行
{
for(j=0;j<=i;j++)
//{
printf("%d ",a[i][j]);
printf("\n");
//}
}
return 0;
}