《IOS_C语言--进制,C数据类型、常量、变量、运算符、表达式、格式化输入输出》

来源:互联网 发布:java基础教程视频 编辑:程序博客网 时间:2024/06/08 07:11

一:进制


二进制(0,1),八进制(0~7)O开头,如O567=5*8*8+6*8+7*1=375,前面的O是标志是八进制,十六进制(0·9,A~F),以OX开头作为标志,如:OXAFF=10*16*16+15*16+15*1=25855

二进制划分三位一组可以转换成八进制的,二进制划分4为一组可以转换成十六进制


二:程序的一般形式:

#import <Foundation/Foundation.h>这里是Xcode工具里面的OC开发比C要好的是,该头文件集成了C的类库<stdio.h><stdbool.h><math.h><string.h>等头文件

int main(int argc,const char*argv[]){

   printf("hello ios!");

return 0;

}

三:基本数据类型

整型int(4字节)

浮点型(4字节或者8字节,范围跟下面类似的计算出来)

字符型(1字节=8位,无符号则范围是0~255,其他类似,有符号则对半-128~127)

四:常量

字符型常量:'A','a','9'等都是单个字符

定义一个常量方法:const int a=80;//实际上这并不是定义一个常量,const的定义,只是限制变量a不可以更改而已,验证方法:printf("%p\n",a);结果输出的是一个栈区的地址,而并不是常量区的地址

五:变量

变量表示一个可以存储的区域,并且变量名不可以重复,要使用,必须先定义变量名。不能跟一下的系统保留字相同:

//auto :声明自动变量 一般不使用
//    double :声明双精度变量或函数
//    int: 声明整型变量或函数
//    struct:声明结构体变量或函数
//    break:跳出当前循环
//    else :条件语句否定分支(与 if 连用)
//    long :声明长整型变量或函数
//    switch :用于开关语句
//    case:开关语句分支
//    enum :声明枚举类型
//    register:声明积存器变量
//    typedef:用以给数据类型取别名(当然还有其他作用)
//    char :声明字符型变量或函数
//    extern:声明变量是在其他文件正声明(也可以看做是引用变量)
//    return :子程序返回语句(可以带参数,也看不带参数)
//    union:声明联合数据类型
//    const :声明只读变量
//    float:声明浮点型变量或函数
//    short :声明短整型变量或函数
//    unsigned:声明无符号类型变量或函数
//    continue:结束当前循环,开始下一轮循环
//    for:一种循环语句(可意会不可言传)
//    signed:生命有符号类型变量或函数
//    void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)
//    default:开关语句中的“其他”分支
//    goto:无条件跳转语句
//    sizeof:计算数据类型长度
//    volatile:说明变量在程序执行中可被隐含地改变
//    do :循环语句的循环体
//    while :循环语句的循环条件
//    static :声明静态变量
//    if:条件语句


六、运算符

(1)赋值运算符:=

如:以下过程是交换两个变量的值,主要用到赋值运算符=

int number1 =10;
    int number2 =23;
    int c =0;
    c=number1;
    number1 = number2;
    number2 = c;
//    //OC的输出方式
    NSLog(@"\n number1 is %d\n number2 is  %d\n",number1,number2);//输出两个number值。\n换行的意思 %d以整型的形式输出
    //C的输出方式
    printf("number1 = %d\n  number2 = %d\n",number1,number2);

结果:输出number1=23,number2=10

(2)/除法运算符,结果为取整的,为了结果有小数,方法:a/(float)b或者5/2.0

(3)%求余运算符,两边的数必须是整数

3对9取余,就是3,因为不够除3%9=3
//9对3取余数,是0,因为整除9%3=0

(4)自增自减++,--

//++,--是单目运算符,只有一个?;三目运算符,其他都是双目运算符+,—,%,/,*等
    int a=10,b=20;
    a=a+b;
    a +=b;//等效于a=a+b
    int c = a+b++;//等效于c=a+(b++)
    printf("a is %d\n b is %d\n c is %d\n",a,b,c);
    int c = a+(++b);//这个括号没有优先级的,只是增加可读性,取消二义性。因此c=a+b--等效于c=a+(b--)
    int c=( ++ a)+(b --)+(  ++a)-(--b);//第一个(++a),a=11,第二个(++a),a=12;第一个(b--),b原值参与运算,但b值已经等于19,第二个(--b),b=19-1=18,并且也参与运算。所以,a=12,b=18,c=11+20+12-18=25
    printf("a is %d\n b is %d\n c is %d\n",a,b,c);

七:表达式

由常量,变量,运算符组成:如3+5,a+=b

区别语句:语句是程序的最小单位必须以“;”结束

八:输入输出函数

输出函数:printf("这里面可以是任何东西");或者printf("任意东西+格式串混合",变量名);

输入函数:scanf("格式串%d%s%c%f%lu%.3f,%g(自动忽略无效位0)等,不能有汉字,除了格式串外最多只能有逗号或者空格",&变量名);



0 0
原创粉丝点击