函数练习
写代码将三个整数从大到小输出
使用if语句
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int a, b, c,tmp;
scanf("%d %d %d", &a, &b, &c);
if (a < b)
{
tmp = a;
a = b;
b = tmp;
}
if(a<c)
{
tmp = a;
a = c;
c = tmp;
}
if (b < c)
{
tmp = b;
b = c;
c = tmp;
}
printf("%d %d %d", a, b, c);
return 0;
}
使用交换函数
void Swap(int* n, int *m)
{
int tmp;
tmp = *n;
*n = *m;
*m = tmp;
}
int main()
{
int a, b, c, tmp;
scanf("%d %d %d", &a, &b, &c);
if (a < b)
{
Swap(&a, &b);
}
if (a < c)
{
Swap(&a, &c);
}
if (b < c)
{
Swap(&b, &c);
}
printf("%d %d %d", a, b, c);
return 0;
}
打印1-100之间三的倍数
for循环求解(第一种)
int main()
{
int i = 1;
for (i = 1; i <= 100; i++)
{
if (i % 3 == 0)
{
printf("%d ", i);
}
}
return 0;
}
for循环求解(第二种)
int main()
{
int i = 1;
for (i = 3; i <= 100;i=i+3)
{
printf("%d ", i);
}
return 0;
}
给定两个数求最大公约数
(暴力求解)
int main()
{
int a = 0;
int b = 0;
scanf("%d %d",&a, &b);
//求最大公约数
int min = (a,b) ? a : b;
int m = min;
while (m>0)
{
if (a % m == 0 && b % m == 0)
{
printf("%d", m);
break;
}
m--;
}
return 0;
}
辗转相除法
//辗转相除法
int main()
{
int a = 0;
int b = 0;
int c = 0;
scanf("%d %d", &a, &b);
//求最大公约数
while(c=a % b)
{
a = b;
b = c;
}
printf("%d", b);
return 0;
}
求1-100之间的有多少个9
//1-100之间有多少个9
//9 19 29 39 49 59 69 79 89 99
//90 91 92 93 94 95 96 97 98 99
int main()
{
int i = 1;
int count = 0;
for (i = 1; i <= 100; i++)
{
if (i % 10 == 9)
count++;
if (i / 10 == 9)
count++;
}
printf("%d", count);
return 0;
}
分数求和
//求1-1/2+1/3-。。。-1/100
#include<math.h>
int main()
{
int i = 0;
double sum = 0;
int flage = 1;
for (i = 1; i <= 100; i++)
{
sum = sum +flage*(1.0/ i);
flage = -flage;
}
printf("%lf", sum);
return 0;
}