小代码:
输出效果:
更进后的代码:
运行效果:
//计算n的阶乘
#include <stdio.h>
#include <string.h>
#include <windows.h>
int jieC(int a)
{
if (a < 0)
{
printf("输入的数字不合法");
}
int result = 1;
for (int i = 1; i <= a; i++)
{
result = result * i;
}
printf("该数的阶乘为:%d\n", result);
return 0;
}
int main()
{
int a;
printf("请输入您需要的计算阶乘的数字:");
scanf("%d", &a);
jieC(a);
return 0;
}
//计算 1!+2!+3!+...+n!
#include <stdio.h>
#include <string.h>
#include <windows.h>
int jieC(int a)
{
if (a < 0)
{
printf("输入的数字不合法");
}
int result = 0;
for (int i = 1; i <= a; i++)
{
int sum = 1;
for (int j = 1; j <= i; j++)
{
sum = sum * j;
}
result = sum + result;
}
printf("该数的阶乘为:%d\n", result);
return 0;
}
int main()
{
int a;
printf("请输入您需要的计算阶乘的数字:");
scanf("%d", &a);
jieC(a);
return 0;
}
// 有序数组进行查找某个数x
#include <stdio.h>
#include <string.h>
int search(int x, int v[], int size)
{
int left = 0;
int right = size - 1;
int count = 0;
for (int i = 0; i <= size; i++)
{
if (left > right)
{
printf("该数在数组中不存在");
return 0;
}
int mid = (left + right) / 2;
if (v[mid] == x)
{
printf("该数在数组中的元素下标是:%d\n", mid);
printf("查到该数一共查找了 %d 次", count);
return 0;
}
else if (v[mid] > x)
{
right = mid - 1;
}
else if (v[mid] < x)
{
left = mid + 1;
}
count++;
}
return 0;
}
int main()
{
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8};
int x;
printf("请输入您需要查找的数字:");
scanf("%d", &x);
getchar();
search(x, arr, 8);
return 0;
}
// 编写代码,演示多个字符从两端移动,向中间汇聚
#include <stdio.h>
#include <string.h>
#include <windows.h>
int main()
{
char a[] = "############";
char b[] = "xmymyqxmymyq";
int left = 0;
int right = strlen(b) - 1;
for (int i = 0; i <= right; i++)
{
a[left] = b[left];
a[right] = b[right];
printf("%s", a);
Sleep(1000);
system("cls");
left++;
right--;
}
printf("%s", a);
return 0;
}
若得青峰三尺剑,醉罢斩天落长虹 q丶