#includeint main() { int i = 0; for (i = 1; i <= 100; i++) { if (0 == i % 3) printf("%d ",i); } return 0; }
运行结果:
1.2写代码将三个整数数按从大到小输出。#includeint main() { int a = 0; int b = 0; int c = 0; int i = 0; scanf("%d %d %d", &a ,&b, &c); if (a < b) { i = a; a = b; b = i; } if (a < c) { i = a; a = c; c = i; } if (b < c) { i = b; b = c; c = i; } printf("%d %d %dn", a, b, c); return 0; }
运行结果:
1.3、打印100~200之间的素数#includeint main() { int i = 0; int j = 0; for (i = 100; i <= 200; i++) { int flag = 1; for (j = 2; j < i; j++) { if (0 == i % j) { flag = 0; break; } } if (1 == flag) printf("%d ",i); } return 0; }
运行结果:
1.4、打印1000年到2000年之间的闰年#includeint main() { int i = 0; int sum = 0; for (i = 1000; i <= 2000; i++) { if (i % 4 == 0 ) { if (i % 100 != 0) { printf("%d ", i); sum++; } } if (i % 400 == 0) { printf("%d ", i); sum++; } } printf("nsum = %dn ",sum); return 0; }
运行结果:
1.5给定两个数,求这两个数的最大公约数#includeint main() { int m = 0; int n = 0; scanf("%d %d", &m, &n); int min = (m < n ? m : n); while (1) { if (m % min == 0 && n % min == 0) { printf("%d ", min); break; } min--; } return 0; }
运行结果:
1.6、在屏幕上输出9*9乘法口诀表#includeint main() { int i = 0; int j = 0; for (i = 1; i <= 9; i++) { for (j = 1; j <= i; j++) { printf("%d*%d=%-2d ", i, j, i * j); } printf("n"); } return 0; }
运行结果:
1.7、求10 个整数中最大值#includeint main() { int i = 0; int j = 0; int arr[] = {-1,-2,-3,-4,-5,-6,-7,-8,-9,-10}; for (i = 1; i <= 9; i++) { if (arr[j] < arr[i]) { j = i; } } printf("%d ", arr[j]); return 0; }
运行结果:
二、for循环练习题 2.1、计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果#includeint main() { int a = 0; int X = 1; float sum = 0.0; for (a = 1; a <= 100; a++) { sum = sum +X* (1.0 / a); X = -X; } printf("%f",sum); return 0; }
运行结果·:
2.2、编写程序数一下 1到 100 的所有整数中出现多少个数字9#include2.3、猜数字游戏int main() { int i = 0; int sum = 0; for (i = 1; i <= 100; i++) { if (9 == i % 10) sum = sum + 1; if (9 == i / 10) sum = sum + 1; } printf("%d",sum); return 0; }
void menu()
{
printf("######################################n");
printf("############1:play####################n");
printf("############0:exit####################n");
printf("######################################n");
}
void game()
{
int guess = 0;
int ret = rand() % 100 + 1;
while (1)
{
printf("请猜数字:>");
scanf("%d", &guess);
if (guess > ret)
{
printf("猜大了n");
}
else if (guess < ret)
{
printf("猜小了n");
}
else
{
printf("恭喜你,猜对了!!!n");
break;
}
}
}
int main()
{
int input = 0;
menu();
srand((unsigned int)time(NULL));
do
{
scanf("%d", &input);
if(1==input)
{
game();
break;
}
else if (0 == input)
{
printf("退出游戏n");
break;
}
else
{
printf("输入错误,请重新输入n");
}
}
while (input!=0);
return 0;
}
运行结果:
2.4、编写代码在一个整形有序数组中查找具体的某个数(用二分查找)要求:找到了就打印数字所在的下标,找不到则输出:找不到。
#define _CRT_SECURE_NO_WARNINGS 1 #includeint main() { int arr[] = { 1,2,3,4,5,6,7,8,9,10 }; int sz = sizeof(arr) / sizeof(arr[0]); int left = 0; int right = sz-1; int k = 0; scanf("%d",&k); while (left <= right) { int mid = (right + left) / 2; if (k < arr[mid]) { right = mid - 1; } else if (k > arr[mid]) { left = mid + 1; } else { printf("找到了,下标为%dn",mid); break; } } if (left > right) { printf("找不到n"); } return 0; }



