for循环
编写程序数一下 1到 100 的所有整数中出现多少个数字9
#include <stdio.h>
int main()
{
int count = 0;
for (int i = 1; i <= 100; i++)
{
if (i % 10 == 9)
count++;
if (i / 10 == 9)
count++;
}
printf("%d\n", count);
return 0;
}
计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果
#include <stdio.h>
int main()
{
int i = 0;
double sum = 0;
int flag = 1;
for (i = 1; i <= 100; i++)
{
sum = sum + (flag) * (1.0 / i);
flag = -flag;
}
printf("%lf\n", sum);
return 0;
}
求10 个整数中最大值
#include <stdio.h>
int main()
{
int arr[10] = { 0,1,3,5,-1,2,7,8,4,-2 };
int max = arr[0];
for (int i = 1; i < 10; i++)
{
if (arr[i] > max)
max = arr[i];
}
printf("%d\n", max);
return 0;
}
在屏幕上输出9*9乘法口诀表
#include <stdio.h>
int main()
{
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
printf("%d*%d=%-2d ", j, i, j * i);
}
printf("\n");
}
return 0;
}
二分查找
编写代码在一个整形有序数组中查找具体的某个数
要求:找到了就打印数字所在的下标,找不到则输出:找不到。
#include <stdio.h>
int main()
{
int arr[] = { 0,1,2,3,4,5,6,7,8,9 };
int k = 0;
scanf("%d", &k);
int left = 1;
int right = sizeof(arr) / sizeof(arr[0]);
while (left <= right)
{
int mid = left + (right - left) / 2;
if (k > arr[mid-1])
left = mid + 1;
else if (k < arr[mid-1])
right = mid - 1;
else
{
printf("找到了,下标: %d\n", mid-1);
break;
}
}
if (left > right)
printf("找不到\n");
return 0;
}