以下有几个使用C语言编写的解决小问题的办法,可以供大家更加熟练地使用C语言。
1.实现一个函数打印出乘法口诀表,可以任意定义行和列
#include <stdio.h>
void print_table(int n)
{
int i = 0;
for (i = 1; i <= n; i++)//打印9行
{
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;
}
2.写一个代码打印1~100之间所有3的倍数的数字
#include <stdio.h>
int main()
{
int x = 1;
while (x >= 1 && x <= 100)
{
if (x % 3 == 0)
printf("%d ", x);
x++;
}
return 0;
}
3.给定两个数,求最大公约数
#include <stdio.h>
int main()
{
int x = 0;
int y = 0;
scanf("%d %d", &x, &y);
int mi = (x < y) ? x : y;
while (1)
{
if (x % mi == 0 && y % mi == 0)
break;
mi--;
}
printf("%d ", mi);
return 0;
}
使用辗转相除法
#include <stdio.h>
int main()
{
int a = 0;
int b = 0;
scanf("%d %d", &a, &b);
while (a % b)
{
int c = a % b;
a = b;
b = c;
}
printf("%d ", b);
return 0;
}
4.计算1/1-1/2+1/3-1/4…+1/99-1/100
#include <stdio.h>
int main()
{
int i = 0;
double sum = 0;
for (i = 1; i <= 100; i++)
{
sum = sum + 1.0 / i;
}
printf("%lf", sum);
return 0;
}
5.准备10个整数找出最大值
#include <stdio.h>
int main()
{
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
int max = arr[0];
int i = 0;
for (i = 1; i < 10;i++)
{
if (arr[i] > max)
max = arr[i];
}
printf("%d\n", max);
return 0;
}