最简单的C程序设计——顺序程序设计

  1、常量

    在程序运行过程中,其值不能被改变的量。

       A、整形常量(int、long、short)

       B、实型常量(float、double)

       C、字符常量(普通字符:使用单撇号括起来的一个字符)

       D、转义字符(以字符“”开头的字符序列)

       

         E、字符串常量(用双撇号把若干个字符括起来,字符串常量是双撇号中的全部字符但不包括双撇号本身。)

         F、符号常量(用#define指令,指定用一个符号名称代表一个常量。)

          

#define  PI   3.14   #注意行末没有分号

注:符号常量不占内存,只是一个临时符号,代表一个值,在预编译后这个符号就不存在了,故不能对符号常量赋新值。

  2、变量

    在程序运行过程中,其值发生改变的量。(变量必须先定义,后使用)

    变量名:实际上是以一个名字代表的一个存储地址。

    变量值:通过变量名找到相应的内存地址,从该存储但愿中读取数据。

  3、常变量

    C99允许使用常变量,方法是在定义变量时,前面加一个关键字const

const float pi =3.1415926      //定义常变量

  4、标识符

    只能由数字、字母和下划线三种字符组成,且第一个字符不能以数字开头

  5、数据类型

    类型:对数据分配存储单元的安排,包括存储单元的长度(占多少字节)以及数据的存储形式。不同的类型分配不同的长度和存储形式。

注:在存储单元中的存储(整数)方式,用补码进行表示,且存放整数的存储单元中,最左面一位用来表示符号的(0:表示数为正,1:表示数为负)。

#include <stdio.h>
void main() {
       short int a,b;
       a=32767;
       b=a+1;
       printf("a=%d,a+1=%d
",a,b);
       a=-32768;
       b=a-1;
printf("
a=%d,a-1=%d
",a,b);
}         
//该程序发生的情况称为“溢出”,但运行时不报错。32767+1应该等于32768,但运行结果却是-32768。

  测试不同整数类型所占的字节数的代码如下:

#include <stdio.h>
void main() {
       printf("int:%d bytes
",sizeof(int));
/*int在Tc2.0中字节数为2,在VC中为4*/
       printf("short:%d bytes
",sizeof(short));
/*short型的字节数为2*/
      printf("long:%d bytes
",sizeof(long));
 /*long型的字节数为4*/
}

  其中sizeof的作用是求对象在计算机内存中所占用的字节数。一般形式为:sizeof(object),object可以是变量、表达式或者数据类型名。

   注:凡是以小数形式或指数形式出现的实数均为浮点型常量,在内存中都是以指数形式存储。

C语言运算符

  重点

    1、强制类型转换运算符((类型))----强制转换数据可能会失真。

    2、成员运算符(.     ->)

    3、下标运算符([ ])

    4、其他(如函数调用运算符())

注:不同类型数据间的混合运算除了用户强制转化,编译系统也会自动完成,用户不必过问。(自动完成数据转换的称为隐式转换,即低级数据类型向高级数据看齐(如char向int转换))

C语言语句

  一个函数由数据声明部分和执行语句组成。

  1、控制语句

  2、函数调用语句

  3、表达式语句。(一个表达式的最后加一个分号就成了一个语句)

  4、空语句。(;)

  5、复合语句。(用{}把一些语句和声明括起来称为复合语句即语句块)

{
    x=y+z;
    a=b+c;
    printf("%d%d",x,a);
}

  6、赋值语句。(赋值表达式的末尾没有分号,而赋值语句的末尾必须有分号。)

  

小题一练

  1、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。

    要求:使用scanf输入数据,输出计算结果,输出时要求有文字说明,去小数点后两位数字。

  2、用getchar函数读入两个字符给c1和c2,然后分别用putchar函数和printf函数输出这两个字符。

    思考一下问题:

        (1)变量c1和c2应定义为字符型、整型还是二者皆可?

        (2)要求输出c1和c2值得ASCII码,应如何处理?用putchar函数还是printf函数?

        (3)整型变量与字符变量是否在任何情况下都可以互相代替?如

            char   c1,c2;

        与

            int   c1,c2;

          是否无条件地等价?

  

原文地址:https://www.cnblogs.com/GLory-LTF/p/14737478.html