#include<stdio.h>
#include<math.h>

int main() {
//// 输入50个学生的成绩
//    int i = 1;
//    float aver;
//    float score1,score2,score3,score4,score5;
//    while (i <= 50) {
//        scanf_s("%f,%f,%f,%f,%f", &score1, &score2, &score3, &score4, &score5);
//        aver = (score1 + score2 + score3 + score4 + score5) / 5;
//        printf("aver=%7.2f", aver);
//        i++;
//    }

//// 计算1-100的总和
//    int i = 1;
//    int sum=0;
//    while (i<=100)
//    {
//        sum = sum + i;
//        i++; // 没有这一步,循环永远在内部执行
//    }
//    printf("sum=%d", sum);

//// 对比while和do while
//    // 计算i到10的总和:
//    int i, sum = 0;
//    scanf_s("%d", &i);
//    do {                       
//        sum = sum + i;
//        i++;
//    } while (i <= 10);         // 在这里输入大于10的数字,结果是输入的数值.也就是说循环体会被执行一遍,再跳出while
//    printf("sum=%d", sum);

    //while (i <= 10) {       // 在这里输入大于10的数字,结果是0。也就是说循环体不会被执行
    //    sum = sum + i;
    //    i++;
    //}
    //printf("sum=%d", sum);
    // 总结一下,do while在循环体执行后判断条件;而while在循环体之前就判断条件了;
    
//// for循环
//    // 输出1-100,共100个整数
//        for (int i = 1; i <= 100; i++) {
//            printf("%5d,", i);
//            // ??怎么排列来着,好像是设置row,然后,row%5==0时printf("\n")
//            //int row = 5;
//            //while (i % row == 0) {
//            //    printf("\n");
//            //    row = row + i;
//            //}
//            // 没错,就是用while。
//            for (int row2 = 6; i % row2 == 0; row2 = row2 + i) 
//                // 这里的i%row2==0看起来不像是个能限制无限循环的条件,但是这是一个内嵌for循环,
//                // 只要外部的for循环能够自终,这里也不会无限循环下去
//                printf("\n");
//        }

// 输出输入的字符
    //for (char c; (c = getchar()) != '\n';)  // (c=getchar()) != '\n' 这个表达式2是指 键入的字符赋值给c,若字符不是换行符,则执行printf
    //    printf("%c", c);
    // 另一种方法(为什么不行
    //char c;
    //c = getchar();
    //for (; c != '\n';)
    //    printf("%c", c);


    return 0;
}