【C语法】1124循环结构
#include <stdio.h> int main(){ //输入一个数。倒叙输出各个位上的数。 //123456 6 5 4 3 2 1 // 1输出个位上的数 %10 // 2将这个数去掉个位上的数。 / 10 // 3当这个数最后变成0时结束 int a = 0; printf("请输入一个正整数:"); scanf("%d", &a); while(a != 0){ int b = a % 10; printf("%d\n", b); a = a / 10; } return 0; } |
#include <stdio.h> int main(){ //输入两个数。求他们的最大公约数。 //公约数:8 a 12 b 1 2 4 i a%i== 0 && b%i==0 // 1 输入两个数。 // 2 求出两个数中最小的那个c。 // 3 从1到c // 4 将得到的所有的公约数依次赋值给d d的最终值就是最大的 //找到的最后的那个就是最大公约数 int a = 0; int b = 0; printf("请输入两个数a和b:"); scanf("%d %d", &a, &b); int c = a > b ? b : a; int d = 0; for (int i = 1; i <= c; i++){ if (a % i == 0 && b % i == 0){ d = i; } } printf("%d和%d的最大公约数是:%d", a, b, d); return 0; } |
#include <stdio.h> int main(){ //输入一个数。判断这个数是否是质数。 //只能被1 和本身整除的数。 //只要能被2---本身- 1 中任意一个数整除 就不是质数 // 1 输入一个数a // 2 从 2 -- a-1 i; // 3 判断 a%i== 0 如果能 就不是。 // 4 当说有的数都被判断过才能确定它是质数 int a = 0; printf("请输入一个数:"); scanf("%d", &a); int c = 0; for (int i = 2; i <= a - 1; i++){ if (a % i == 0){ printf("不是质数\n"); break; } if (i == a - 1){ printf("是质数\n"); } } return 0; } |
If-else
1 多重if
If(){ }else if(){ }else if(){ } ... else{ } 适用的例子就是我们的考试成绩例子 |
2 嵌套if
#include <stdio.h> int main(){ //超市买东西,结账: // 0 200以内不打折 200 9.5 // 1 100 以内 95折 100--200 - 9折 200以上 85折 //先输入是否会员 0 代表不是 1代表是 int //再输入购买金额 float int m = 0; printf("请输入是否会员:"); scanf("%d", &m); float buy = 0; printf("请输入购买金额:"); scanf("%f", &buy); float pay = 0; if (m == 0){ //不是会员 if (buy < 200){ pay = buy; } else{ pay = buy * 0.95; } } else{ //是会员 if (buy < 100){ pay = buy * 0.95; } else if (buy < 200){ pay = buy * 0.9; } else { pay = buy * 0.85; } } printf("请支付%f元", pay); return 0; } |
总结:当要判断的对象是单一的情况下,用多重if
如果判断的对象是多个的情况下,用嵌套