C语言--(1、输出1-100的素数。2、求两个数的最小公倍数和最大公约数。3、输出杨辉三角)
作业一、输出1-100之间的素数:
代码如下:
#include<stdio.h>
int main ()
{
int i;
int j;
int flag = 1;
for(i = 2;i <= 100;i++) {
for(j = 2;j <=i/2; j++) {
if(i % j == 0) {
flag = 0;
break;
}
}
if(flag == 1) {
printf("%d\n",i);
}
flag = 1;
}
return 0;
}
执行结果:
作业二、求出两个数的最小公倍数和最大公约数:
代码如下:
#include<stdio.h>
void main() {
int x;
int y;
int temp;
int num1;
int num2;
printf("请输入两个正整数:\n");
scanf("%d,%d",&num1,&num2);
if(num1 < num2) {
temp = num1;
num1 = num2;
num2 = temp;
}
x = num1;
y = num2;
while(temp != 0) {
temp = x%y;
x = y;
y = temp;
}
printf("您输入的两个数的最大公约数为:%d\n",x);
printf("您输入的两个数的最小公倍数为:%d\n",num1*num2/x);
}
执行结果:
作业三、输出杨辉三角形(前十行):
代码如下:
#include<stdio.h>
void main() {
int a[10][10];
int i =0;
int j =0;
int count = 0;
for(i=0;i<10;i++){
a[i][0] = 1;
a[i][i] = 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++) {
for(count=0;count<10-i;count++) {
printf(" ");
}
for(j=0;j<=i;j++) {
printf("%d",a[i][j]);
printf(" ");
}
printf("\n");
}
return 0;
}
执行结果: