总结:
数字的交换:1.在进行数字交换时,需要定义第三个变量来进行存放交换
2.scanf输入时,双引号里面尽量只用占位符,否则容易出错
求最大公约数:利用的方法是辗转相除法
1. 将两个数相除得到商和余数,将除数放到被除数中,将余数放到除数中,然后利用循环 直到余数为0为止,此时的除数便是最大的公约数(求余数的方法是取模)
例:(r=m%n;m=n;n=r)
求素数:利用的方法是试除法 求素数:例如求100-200之间的素数 先求100是不是素数,只需要确定2-99之间的数是否有能被100整除的有则不是素数 那么就可以利用for循环遍历100-200;然后再用一个循环遍历某个数是不是素数;
方案改进: 因为任何一个不是素数的数都可以写成n=a*b的形式,而如果能从2-n-1中找到一个数小于sqrt(n)的数n=a*b满足那么它一定能被n整除,那么它不是素数,如果一直遍历2-99,遍历的数已经大于sqrt(n)了,那么它便一定是素数
查找数组中最大的值: 注意事项: 先假定一个最大值,该最大值为数组的第一个元素
int main() { int a = 0; int b = 0; int c = 0; scanf("%d%d%d", &a, &b, &c); //scanf小括号中不能加入别的符号 if (a < b) { int temp = 0; temp = a; a = b; b = temp; } if (a < c) { int temp = 0; temp = a; a = c; c = temp; } if (b < c) { int temp = 0; temp = b; b = c; c = temp; } printf("%d%d%d", a, b, c); return 0; } //求最大公约数: 辗转相除法 int main() { int m = 0; int n = 0; int r = 0; scanf("%d%d", &m, &n); while (r = m % n) { m = n; n = r; } printf("%d", n); return 0; } // 求素数的方法 int main() { int count = 0; for (int i = 100; i <= 200; i++) { int j = 0; for (j=2; j <= sqrt(i); j++) { if (i % j == 0) { break; } } if (j>sqrt(i)) { count++; printf("%d ", i); } } printf("%d", count); return 0; } int main() { int i = 0; int count = 0; for (i = 100; i <= 200; i++) { int j = 0; for (j = 2; j <= sqrt(i); j++) { if (i % j == 0) { break; } } } } 找出数组中的最大值 int main() { int arr[] = { 1,2,3,4,5,6,7,8,9 }; int max = arr[0]; for (int i = 1; i < sizeof(arr) / sizeof(arr[0]); i++) { if (arr[i] > max) { max = arr[i]; } } printf("max=%d", max); } 打印乘法口诀表 int main() { for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { printf("%d*%d=%dt", i, j,i*j); //%2d 只打印两位 不足用空格补齐 } printf("n"); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)