目录
1、求三个数的最大值
2、求三角形面积 提示:area=s(s-a)(s-b)(s-c)的开平方根 s=(a+b+c)/2
3、打印1-100的奇数
4、求n的阶乘(1×2×3...×n)
5、求n的阶乘之和(输入数字n,求1!+2!..+n!)
6、在一个有序数组中使用折半查找
7、找出两个数组中相同的数字并输出
8、输入100-999内的整数,反序显示,如输入123,输出321
9、输入任意一个整数,逐个输出它的每一位。(递归)
10、输入一个数,得到这个数的每个位数的数之和。例如1234,得到1+2+3+4,为10
11、输入一个字符串,判断它是否为回文。所谓回文是指字符串正序和逆序是一样的,如“abcdcba”就是回文。
11、输入两个自然数,输出它们的最大公约数和最小公倍数
12、输入一组成绩,除去最高分,除去最低分,求平均分
13、判断素数:对于一个整数k,如果k不能被2到根号k之间的所有整数除尽,则k是素数
14、输入数组,倒序输出
15、打印Fibonacci数列1 1 2 3 5 8 13 ...,每五个数换一行
16、冒泡排序:相邻两个数比大小排序
17、选择排序
18、插入排序
#include
#define Max(a,b) a>b?a:b
int main()
{
int a, b, c;
int max;
scanf("%d %d %d", &a, &b, &c);
max = Max(Max(a, b), c);
printf("max=%d", max);
return 0;
}
#include
#include
int tringle(int a, int b, int c)
{
int area;
int s;
s = (a + b + c) / 2;
area = sqrt((s - a)*(s - b)*(s - c)*s);
return area;
}
int main()
{
int condition = 0;
while(condition==0)
{
//首先输入三角形的三边:
int a, b, c;
printf("请输入三角形三边:");
scanf("%d %d %d", &a, &b, &c);
//定义三角形面积
int area;
//判断这三边是否成立,即两边之和大于第三边
if (a + b > c && a + c > b && b + c > a)
{
//三边成立,则调用函数tringle(int a,int b,int c),返回值是面积
area = tringle(a, b, c);
printf("三角形面积是:%d", area);
condition = 1;
}
else
printf("输入三边错误,请重新输入!\n");
}
return 0;
}
#include
int main()
{
int i = 1;
for (i = 1; i < 100; i++)
if (i % 2 == 1)
printf("%d ", i);
return 0;
}
#include
int main()
{
int n = 0, i = 1, result = 1;
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
result *= i;
if(i
#include
int main()
{
int n = 0, i = 1, res = 1, result = 0;
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
res *= i;
result += res;
if(i
int main()
{
int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
int left, mid, right, sz;
int n , i = 0;
int con = 1;
printf("请输入要查找的数字:");
scanf("%d", &n);
sz = sizeof(arr) / sizeof(arr[0]);
left = 0, mid = (sz - 1) / 2, right = sz - 1;
for (i = 0; i < sz - 1; i++)
{
if (n < arr[mid])
{
right = mid;
mid = (mid + left) / 2;
}
else if (n > arr[mid])
{
left = mid;
mid = (mid + right) / 2 + 1;
}
else if (n == arr[mid])
{
printf("找到了!");
con = 0;
break;
}
}
if (con)
printf("没找到。");
return 0;
}
int main()
{
int arr1[] = { 1,9,5,3,2 };
int arr2[] = { 6,3,5,9,4,11 };
int sz1= sizeof(arr1) / sizeof(arr1[0]);
int sz2= sizeof(arr2) / sizeof(arr2[0]);
for (int i = 0; i < sz1 - 1; i++)
{
for (int j = 0; j < sz2 - 1; j++)
{
if (arr1[i] == arr2[j])
printf("%d ", arr1[i]);
}
}
return 0;
}
int main()
{
int num = 0;
scanf("%d", &num);
int a, b, c;
a = num / 100;
b = num / 10 % 10;
c = num % 10;
printf("%d%d%d", c, b, a);
return 0;
}
void way(int num)
{
if (num > 9)
way(num / 10);
printf("%d ", num % 10);
}
int main()
{
int num = 0;
scanf("%d", &num);
way(num);
return 0;
}
int way(int num)
{
if (num > 9)
return num % 10 + way(num / 10);
else
return num;
}
int main()
{
int num = 0;
scanf("%d", &num);
printf("%d", way(num));
return 0;
}
int main()
{
char str[] = "aabbccbbaa";
int sz = sizeof(str) - 1;
int j = sz - 1;
printf("%d\n", sz);
int con = 0;
for (int i = 0; i < sz; i++)
{
if (str[i] == str[j])
j--;
else
con = 1;
}
if (con)
printf("不是回文。");
else
printf("是回文。");
return 0;
}
最小公倍数=m*n/最大公约数
int main()
{
int m, n;
scanf("%d %d", &m, &n);
int zdgy, zxgb;
int k = m < n ? m : n;
for (zdgy=k; zdgy > 0; zdgy--)
{
if (m % zdgy == 0 && n % zdgy == 0)
break;
}
zxgb = m * n / zdgy;
printf("最小公倍数是:%d,最大公约数是:%d", zxgb, zdgy);
return 0;
}
#define N 6
int main()
{
int max = 0, min = 100;
int num, sum = 0, ave;
for (int i = 0; i < N; i++)
{
printf("请输入第%d个成绩:", i + 1);
scanf("%d", &num);
if (num > max)
max = num;
if (num < min)
min = num;
sum += num;
}
ave = (sum - max - min) / (N - 2);
printf("去除一个最高分%d分,去除一个最低分%d分,平均分为%d", max, min, ave);
return 0;
}
#include
int main()
{
int k;
int con = 0;
scanf("%d", &k);
for (int i = 2; i < sqrt(k); i++)
{
if (k % i == 0)
con = 1;
}
if (con)
printf("%d不是素数", k);
else
printf("%d是素数", k);
return 0;
}
#define N 10
int main()
{
int arr[N];
for (int i = 0; i < N; i++)
scanf("%d", &arr[i]);
for (int i = N - 1; i >= 0; i--)
printf("%d ", arr[i]);
return 0;
}
#define N 20
int main()
{
int arr[N];
arr[0] = 1, arr[1] = 1;
for (int i = 2; i < N; i++)
arr[i] = arr[i - 1] + arr[i - 2];
for (int i = 0; i < N; i++)
{
printf("%d\t", arr[i]);
if (arr[i] % 5 == 0)
printf("\n");
}
return 0;
}
#define N 10
int main()
{
int arr[N];
int i = 0, j = 0;
int tmp;
printf("请输入%d个数:",N);
for (i = 0; i < N; i++)
scanf("%d", &arr[i]);
for(i = 0;i arr[j+1])
{
tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
}
for (i = 0; i < N; i++)
printf("%d ", arr[i]);
return 0;
}