C语言笔记(1)

  1. char类型数据转换为int类型数据遵循ASCII码中的对应值,ASCII码请查看WIKI。
    ++注:字节小的可以向字节大的自动转换,但字节大的不能向字节小的自动转换++
  2. 除法运算中注意:
    如果相除的两个数都是整数的话,则结果也为整数,小数部分省略,如8/3 = 2;而两数中有一个为小数,结果则为小数,如:9.0/2 = 4.500000。
  3. 取余运算中注意:
    该运算只适合用两个整数进行取余运算,如:10%3 = 1;而10.0%3则是错误的;运算后的符号取决于被模数的符号,如(-10)%3 = -1;而10%(-3) = 1。
  4. do-while循环语句的语义是:它先执行循环中的执行代码块,然后再判断while中表达式是否为真,如果为真则继续循环;如果为假,则终止循环。因此,do-while循环至少要执行一次循环语句
  5. C语言依次取出一个数的各位数:设一个数为n,则在C语言中其个位、十位、百位、千位依次这样计算:n/1%10,n/10%10,n/100%10,n/1000%10
  6. 使用for语句应该注意:

    • for循环中的“表达式1、2、3”均可可以缺省,但分号(;)不能缺省。
    • 省略“表达式1(循环变量赋初值)”,表示不对循环变量赋初始值。
    • 省略“表达式2(循环条件)”,不做其它处理,循环一直执行(死循环)
    • 省略“表达式3(循环变量增量)”,不做其他处理,循环一直执行(死循环)注:死循环可以使用break解决
    • 表达式1可以是设置循环变量的初值的赋值表达式,也可以是其他表达式
    • 表达式1和表达式3可以是一个简单表达式也可以是多个表达式以逗号分割。
    • 表达式2一般是关系表达式或逻辑表达式,但也可是数值表达式或字符表达式,只要其值非零,就执行循环体
    • 各表达式中的变量一定要在for循环之前定义
  7. while、do-while和for三种循环在具体的使用场合上是有区别的,如下

    • 在知道循环次数的情况下更适合使用for循环;
    • 在不知道循环次数的情况下适合使用while或者do-while循环,如果有可能一次都不循环应考虑使用while循环,如果至少循环一次应考虑使用do-while循环。
    • 但是从本质上讲,while,do-while和for循环之间是可以相互转换的
  8. 输出正三角形的*图形,先数一数每行打几个空格,再数一数每行几个星号,找出规律,然后一行的循环中,打完空格打星号,之后回车而不是画图。

  9. continue语句的作用是结束本次循环开始执行下一次循环。
    break语句与continue语句的区别是:break是跳出当前整个循环,continue结束本次循环开始下一次循环。
  10. 在使用switch语句时还应注意以下几点:

    • 在case后的各常量表达式的值不能相同,否则会出现错误。
    • 在case子句后如果没有break;会一直往后执行一直到遇到break;才会跳出switch语句。
    • switch后面的表达式语句只能是整型或者字符类型。
    • 在case后,允许有多个语句,可以不用{}括起来。
    • 各case和default子句的先后顺序可以变动,而不会影响程序执行结果。
    • default子句可以省略不用。
  11. goto语句通常不用,主要因为它将使程序层次不清,且不易读,但在特定情况下,可以使用goto语句来提高程序的执行速度,所以还是少用为妙。

#include <stdio.h>
int main()
{
    int sum = 0;
    int i;
    for(i=1; i<=10; i++)
    {
        printf("%d\n", i);
        if(i==3)//是不是少了一个判断呢?
        goto LOOP;//在这里使用goto语句
    }
    LOOP:printf("结束for循环了....");  //请选择合适位置添加标识符
    return 0;    
}

你可能感兴趣的:(C语言,ASCII)