C语言学习记录
Mike-C
学习中
展开
-
两个数的最大公约数和最小公倍数的求法
最大公约数:方法一:辗转相除法采用函数嵌套调用形式进行求两个数的最大公约数。定义一个函数为:max,设x,y为参数。x和y取余,如果x%y==0,说明y是最大公约数,否则将y和x%y作为新的参数输入max中。int max(int x, int y){ if (x % y == 0) return y; else return max(y, x % y);}方法二:枚举法输入两个数a ,b,取两数之间数值小的数为x;在a和b分别和x取余并判断两个余数是否都为0,原创 2021-11-12 15:37:17 · 1511 阅读 · 0 评论 -
判断一个数的位数并顺(逆)序输出
思路判断位数:可以用这个数除以10,每除以一次10,根据截断取整判断是否等于0,当等于0时,除以了多少个10就是几位数。(还要考虑这个数为0时的情况)顺序输出:首位输出可以用这个数除以10*(位数-1的次方),次位数可以用这个数和位数-1的次方求模后得到的数重复首位输出的方法输出。例如:1234为四位数,所以首位就是1234/=1 ,1234%=234 , 次位数就是234/=2 ,通过这样以此输出每个数。逆序输出:将这个数先与10求模,得到最后一位数,再除以10得到出去最后一位数的新数,再..原创 2021-11-10 20:07:55 · 2467 阅读 · 3 评论 -
关于奇偶的循环
程序中要对一些奇数或偶数进行运算,例如:采用循环结构完成1至100之间的奇数相加。一般使用以下方法:#include<stdio.h>int main(){ int sum=0, b=0; while (b++ < 100) { if (b % 2 == 0) ; else { sum += b; } } printf("%d", sum); return 0;}关于奇偶判断还可以利用两整数相除还是整数而不是浮点数,如下:原创 2021-11-06 00:32:10 · 654 阅读 · 0 评论 -
通过循环实现多次输入
double x, y; printf("输入一个数计算函数值:"); while (scanf_s("%lf", &x)==1) { if (x < 0 && x != -4) { y = 2 * x * x + 3 * x - 4; printf("x=%5.1f, f(x)=%5.1f\n\n", x, y); } else { if ((x >= 0 && x < 10) ...原创 2021-11-05 22:40:10 · 1924 阅读 · 0 评论