C语言之九九乘法表||素数||最小公倍数

一、九九乘法表

(1)思路

1、九九乘法表中存在三个变量,以 x1 ; x2 ; y 为例(这里也可以使用两个变量,用x1和x2来表示y,方法一样)
2、想好了变量之后,我们要想怎样将他实现呢,正时候就要利用前面学的语句了。

首先认清关系

这时候你是否发现有很大的关系呢

以列或行观察总会有一个不变的量乘以1,2,3,4,5,6,7,8,9

然后在+1在乘以1,2,3,4,5,6,7,8,9

你也发现了这个关系吧!

 然后确定语句

不出所料地,这里需要两个循环嵌套

用两个变量行和列的控制

(2)代码实现

#include <stdio.h>
int main()
{
	int i = 0;
	               //控制行数
	for(i=1; i<=9; i++)
	{
		      //打印每一行内容,每行有i个表达式
		int j = 0;
		for(j=1; j<=i; j++)
		{
			printf("%d*%d=%2d ", i, j, i*j);
		}
		printf("\n");
	}
	return 0;
}

注:图中的%2d是为了对齐 

二、素数

(1)思路

这里编写前,要知道素数是什么?

素数:指只有本身和1能够整除;

首先也是要认清关系

我们需要一个变量来代替素数,其次我们需要两个变量来判断他是否能够整除和整除的值,最后因为要判断是否只有本身和1能够整除,我们可以引用一个变量来统计它能够整除的数的个数;

以a(除数),b(被除数),c(余数),d(个数)为例

确定一个被除数然后将它依次与a相除,余数为0,且d是小于等于二的,然后输出这个b;

确定要使用的语句

循环语句是显而易见

(2)代码实现

以100~200的素数为例:


#include<stdio.h>
int main() {
    int a;//除数
    int b;//被除数
    int c;//余数
    int d=0;//个数
    for (b = 100; b <= 200; b++) {
 
            d =0;
            for (a = 1; a <= b; a++) 
            {
                c = b % a;               //判断是否能被整除
                if (c == 0 ) {
                    d++;                     //记能整除以b的个数
                }
                
            }
            if (d <= 2) {
                printf("%d ", b);

            }
    }
    return 0;
}

是否对你太简单了呢,敲敲看吧

三、最小公倍数

我们知道最小公倍数是指两个数都能够整除的最大的数

(1)思路

由最小公倍数的意义得需要三个变量,其中两个是需要有用户特定的

以a,b,c为例

我们可以先判断a和b的大小(最小公倍数比两个最小的数还要小)

然后将最小的数的值赋给c,然后让a和b依次去除以c,c每次减少1,第一个能与a和b整除就为最小公倍数

(2)代码实现

//#include<stdio.h>
//int main()
//{
//    int a=0;
//    int b=0;
//    int max=0;
//
//    scanf("%d%d", &a, &b);
//    if (a<b) {
//        max = a;
//            while (a % max != 0 ||b%max!=0) {
//                max--;
//                if (a % max == 0 && b % max == 0) {
//                    break;
//                }
//        }
//            printf("%d", max);
//    }
//    else {
//        max = b;
//        while (a % max != 0 || b % max != 0) {
//            max--;
//            if (a % max == 0 && b % max == 0) {
//                break;
//            }
//        }
//        printf("%d", max);
//    }
//    return 0;
//}

对于你来说超简单的,点个赞走吧!!!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值