zoukankan      html  css  js  c++  java
  • 学习c编程的第二天

    函数又叫方法,是实现某项功能或完成某项任务的代码块

    #include<stdio.h>
    void show()
    {
      printf("I like c language");
    }
    int main()
    {
      show();
      return 0;
    }

    上面的show()是自定义函数, int main()的int是要求主函数返回的值为整数,因此函数最后一行使用了return 0

    void表示允许函数返回空值,即函数不能有返回值了,也就是说最后不能有return

    一个程序中有且只有一个主函数,其他函数都是由主函数调用

    #include<stdio.h>
    int add(int x,int y)
    {
      return x+y;
    }

    int main()
    {
      int a;
      a=add(1,2);
      printf("%d ",a);
      return 0;
    }

    int x 和int y 是传递给add函数的两个参数,只有在调用函数add时,x和y才存在,系统才会为x,y分配内存,函数一旦执行完成,系统就收回内存

    上面程序的执行过程:首先执行主函数,调用主函数中的add函数,返回x+y的值,回到主函数,赋值给a,打印a的值至屏幕

    #include<stdio.h>
    int add(int x,int y)
    {
      return x+y;
    }

    int main()
    {
      int x;
      x=0;
      printf("%d ",add(1+2,x));
      return 0;
    }

    add函数的()中的x和y是形式参数,他们的值是不确定的

    而主函数中向add函数传递了两个实际的值1+2和x,x是一个局部变量,定义了它的值为0,局部变量只在本函数中有效

    因此参数分为形式参数和实际参数,在函数调用时,实参和形参分别占用了不同的内存空间

    注意实际参数和形式参数的数据类型必须保持一致

    #include<stdio.h>
    int x=567;
    void show()
    {
      printf("%d ",x);
    }

    int main()
    {
      show();
      printf("%d ",x);
      return 0;
    }

    上面的程序中x是一个全局变量(在所有函数外部定义的变量),可以为程序中所有函数所公用,在整个程序的执行过程中都占有内存,程序执行完成后才释放内存

    局部变量跟全局变量同名时,局部变量会覆盖全局变量

    如果一个函数要修改全局变量,应该在此修改全局变量的函数前添加注释,该函数修改了哪些全局变量,修改的目的是什么,修改的值又是多少

    #include<stdio.h>
    int main()
    {
      printf("%d+%d =%d ",15,16,15+16);
      printf("%d-%d =%d ",15,16,15-16);
      printf("%d*%d =%d ",15,16,15*16);
      printf("%d/%d =%f ",15,16,(float)15/16);
      return 0;
    }

    分析一下printf的第一行:

        第一个%d代表15,依次类推,最后一个%d就代表15+16的值,%d代表输出一个整数

        %f代表输出一个浮点数(它包含了小数部分),这里就代表15/16的值,如果15/16的前面没有(float),输出也会是整数,()是转换运算符,()中的float是强制转换的类型

    #include<stdio.h>
    int main()
    {
      int a;
      scanf("%d",&a);
      printf("%d",a);
      return 0;
    }

    scanf("%d",&a)函数是提示用户输入,并将输入的值保存为整数,&的作用是找到a这个变量在内存中存放的位置,scanf函数会将用户输入的值替换原始变量a的值,scanf是输入函数

    接下来printf会将a的值输出到屏幕, printf是输出函数

    #include<stdio.h>
    int main()
    {
      putchar('a');
      return 0;
    }

    putchar函数是向显示器输出一个字符,‘’的意义是其中有且只能包含单个字符

    putchar还可以输出一个变量的值,示例如下:

    #include<stdio.h>
    int main()
    {
      char a;
      a='A';
      putchar(a);
      return 0;
    }

    char表示变量a是一个字符类型

    #include<stdio.h>
    int main()
    {
      char c;
      c=getchar();
      putchar(c);
      return 0;
    }

    getchar()函数是从标准输入设备上获得一个字符,c=getchar()表示将getchar()函数获得的字符赋值给c

    #include<stdio.h>
    int main()
    {
      char c;
      c=getchar();
      putchar(c);
      c=getchar();
      putchar(c);
      c=getchar();
      putchar(c);
      return 0;
    }

    上面的程序允许一次输入三个字符, 比如输入abc, a会被第一个c=getchar()和putchar(c)处理,接下来是b被第二个,c被第三个

     

    上面的c=getchar();  也可以用scanf("%c",&c);代替   %c表示使用字符型变量来保存用户输入的字符,对应“”后面的变量

    提取字符时,getchar()函数比scanf()函数要方便

        

  • 相关阅读:
    C# 时间格式化
    新线程匿名方法的新用法
    响应类
    图灵API
    Xpath使用
    Meta http-equiv属性
    CAC的Debian-8-64bit安装BBR正确打开方式
    CAC的Debian-8-64bit安装BBR正确方式是?
    Mbps Mb M Kb如何换算
    如何解决服务器远程桌面连接成功但重启却操作失效?
  • 原文地址:https://www.cnblogs.com/linuxboke/p/5594912.html
Copyright © 2011-2022 走看看