乘法口诀表💥
🌟示例一:打印乘法九九表
分析:产生如下九九乘法表的形式,首先确定要打印出九行九列的乘法表,可以使用for循环产生九行,然后嵌套一个判断需要根据几行产生几列的for循环。
代码如下:
>//九九乘法表
>#include<stdio.h>
int main()
{
int i = 0;
for (i = 1; i <= 9; i++)
{
int j = 0;
for (j = 1; j <= i; j++)
{
printf("%d*%d=%-2d ", i, j, i * j);
}
printf("\n");
}
return 0;
}
🌟示例二:写一个函数输入行数打印乘法表
输入行数打印乘法口诀表需要产生如下结果。
分析:输入行数,产生一个乘法表,首先我们应该用产生一个输入值,然后它的行是可变的,我们写一个print_table函数,行要变化的话,它的列也会随行数而变,同样用for循环嵌套使用。
代码如下:
#include<stdio.h>
int print_table(int n)
{
int i = 0;
for (i = 1; i <= n; i++)
{
int j = 0;
for (j = 1; j <= i; j++)
{
printf("%d*%d=%-2d ", i, j, i * j);
}
printf("\n");
}
}
int main()
{
int n = 0;
scanf("%d", &n);
print_table(n);
return 0;
}
输出100~200内的素数💥
首先素数的概念我们需要知道,只能被1和它本身整除的数就叫素数。
🌟第一种方法
分析:假设我们要判断7是否为素数,那我们则需要拿2~6之间的数和7相除。可以看到判断一个数 i 为素数,只要拿 i 和 2 ~ i-1之间的数相除来判断是否整除。那就简单了,我们首先产生100-200之间的数,但是我们可以知道偶数一定不是素数。所以我们从101开始输入。可以假设当令flag变量为1时,i为素数。同时我们也可以计算100-200之间素数个数。
代码如下:
#include<stdio.h>
int main()
{
int i = 0;
int count = 0;
for (i = 101; i <= 200; i+=2)
{
//判断i是否为素数
//拿2-i-1之间的数字去试除i
int j = 0;
int flag = 1;//flag是1,表示是素数
for (j = 2; j <=i - 1; j++)
{
if (i % j == 0)
{
flag = 0;
break;
}
}
if (flag == 1)
{
count++;
printf("%d ", i);
}
}
printf("\ncount = %d\n", count);
return 0;
}
代码实现效果:
🌟第二种方法
分析:第一种的方法在代码实现的方法太繁琐了,需要除到i-1;有没有一种跟简单的方法,当然是有的。例:判断16是否为素数,16不是素数,它可以写成44也可以写成28,可以发现一个数字总是会小于开平方的数字。如果用最小的数字除以开平方的数能整除说明这个数字不是素数。
代码如下:
#include<stdio.h>
#inlcude<math.h>
int main()
{
int i = 0;
int count = 0;
for (i = 101; i <= 200; i+=2)//偶数不可能是素数,产生奇数
{
int j = 0;
int flag = 1;//flag是1,表示是素数
for (j = 2; j <= sqrt(i); j++)
{
if (i % j == 0)
{
flag = 0;
break;
}
}
if (flag == 1)
{
count++;
printf("%d ", i);
}
}
printf("\ncount = %d\n", count);
return 0;
}
代码实现效果:
写成函数形式:只要判断函数内,是素数返回1,不是返回0。
代码如下:
#include<stdio.h>
#include<math.h>
int is_prime(int n)
{
int j = 0;
for (j = 2; j <= sqrt(n); j++)
{
if (n % j == 0)
{
return 0;
}
}
return 1;
}
int main()
{
int i = 0;
int count = 0;
for (i = 101; i <= 200; i += 2)//偶数不可能是素数,产生奇数
{
if (is_prime(i)==1)
{
printf("%d ", i);
count++;
}
}
printf("\ncount = %d\n", count);
return 0;
}
写在最后✨:码字不易,如果对你有帮助的话,给个三连支持以下吧或者关注以下🍎,或者点个赞再走叭🍓。感谢!📣