//
//  main.m  //文件名
//  Day2-上课//工程名
//
//  Created by 张开 on 16/1/5.//创建日期及创建人

//
//单行注释:可以注释一段代码,起到了解释说明的作用,注释是我们程序员编程思维的体现,注释不参与程序运行.

/*
 这是多行注释.
 comd+z :撤销
 comd+, :设置
 comd+a :全选
 comd+shift+n:新建一个工程
 comd+[ :让我们的代码行左移
 comd+] :让我们的代码行右移
 
 */

//#import :导入
//#import<>:代表的是导入我们系统自带的框架(也就是Foundation框架)
//#import"":代表的是导入我们自己创建的文件

#import <Foundation/Foundation.h>

//函数:它是由 函数类型 函数名(参数--->形参,实参)
//{   函数体;   }
//void 代表的是无,不需要有返回值
//函数:它封装了一块代码段
void test()
{

}

//main函数:他是我们程序的入口,程序由此开始执行,遇到return结束,代码段写在return 0;之后没有任何意义,不会执行
int main(int argc, const char * argv[]) {
    
    
    //@autoreleasepool:它是我们OC当中的语法,叫自动释放池
    //   @autoreleasepool {
    // insert code here...
    //NSLog(@""); 这也是我们OC当中的打印函数
    //  NSLog(@"Hello, World!");
    //    }
    
    //数据类型:
    //格式:类型修饰符 变量名 = 数值;
    //分号(;):代表我们代码段的结束语句
    // int nmu =7;
    //float 类型默认只输出6位小数
    
    //float score =88888.923456;
    // printf("%f\n",score);
    //%f默认只输出6位小数
    //printf("%.7f\n",score);//代表是输出小数点后七位小数
    //%f打印出来后,float精度是小数点后6位,但是有效数字是7位
    //?那么我们想要打印出3.1415926该怎么办
    //double的有效位数是15位
   // double d1 =3.1415926;
    //printf("%.7lf\n",d1);
    
    //如果想要输出7位那么我们可以使用double
    /*
     
     float 类型:有效位数是6位
     double类型:有效位数是15位
     
     */
    //字符类型:
    //字符类型格式:类型修饰符 变量名 =''(单引号);
    //空格也代表一个字符
    //char sex = 'm';
    //常量:是我们程序运行期间不能被改变的量
    //变量:是我们程序运行期间可以被改变的量
    //变量相当于我们内存中的一块存储空间 = 号是赋值运算符
    //变量命名规则:
    //1.只能由数字,字母、下划线、$组成,不能以数字开头;
    //2.不可以与系统保留字同名;
    //3.不能使用重复的变量名;
    //4.见名知意;
    //5.驼峰法命名;
#pragma mark--运算符---快速索引
    //  #pragma mark(提示字)是快速索引
    
    
    //第一种(必须掌握) (手抄10便)
     int num1 = 21;
     int num2 = 25;
     //然后定义一个第三方变量用于存储我们交换的值
     int temp = 0;
     //将nmu1的值给temp
     temp = num1;
     //将num2的值给num1
     num1 = num2;
     //将temp的值给num2
     num2 = temp;
     printf("num1 = %d",num1);
     printf("num2 = %d",num2);
    
    
    //第二种:
    //不需要使用额外的变量,使用加减法进行交换
    //定义两个int类型的变量
      /*  int num3 = 34;
        int num4 = 43;
        num3= num3 + num4;
        num4= num3 - num4;//(num3 + num4)-num4
        num3= num3 - num4;//(num3 + num4)-num4
        printf("num3 = %d\n",num3);
        printf("num4 = %d\n",num4);
    
    //第三种
    //使用异或(^);
    int a =3,b = 4;//相同数据类型可以放在同一行集中命名
    a = a^b;
    b = a^b;
    a = a^b;
    printf("a = %d\n",a);
    printf("b = %d\n",b);
    
    
    */
    
    //+,-,*,/
    //定义一个int 类型的变量 a 初值是5;
    //int a =5;
    //定义一个int 类型的变量 b 初值是10;
    //int b =10;
    //定义一个第三方的变量用来接收我们a与b的和
    //int result = 0;
    //result = a + b;
    //printf("result = %d\n",result);
    
    //-;减法;
//    int c = 10;
//    int d = 5;
//    int jf = 0;
//    jf = c - d;
//    printf("jf = %d\n",jf);
    
    //乘法(除法)
    
    //自增,自减
    // ++ 在前,先对自身进行 +1,再参与运算,
    // ++ 在后,先进行运算再对自身 +1
//    
    int a = 2;
    int b = 4;
    int c = 0;
    c = a+++b++;//c = (a++)+(b++);
    printf("%d\n",c);
    
    //char :占用一个字节,范围-128~127
    
    //char类型常量存储,是以对应的ascii码表的值对应进行存储
    //char a = 'a';
    //printf("%d\n",a);//我们对应的字符可以使用%d进行占位,但是我们打印出来的会是我们对应ASCII码表中的值
//
    
#pragma mark -- 复合运算符 --
    // += -= *= /=
//    int a = 4;
//    int c = 0;
//    c += a; //c = c+a;
//            //c = 0+4;
//    printf("%d\n",c);
//    int b = 6;
//    int d = 7;
//    int e = 0;
//    e -=b;//
//    printf("%d\n",e);
//    //*=
//    e *= d;//e = e*d
//    printf("%d\n",e);
    
#pragma mark --- printf ---

//printf()//格式化输出函数
    //scanf()格式化输入函数(阻塞函数)
    
    /*
     ***********
     ***Hello***
     ***********
     */
//    printf("***********\n***Hello***\n***********\n");
//    //来定义一个int类型的变量age 并给其赋初值 18;并打印
//    int age = 18;
//    printf("age=%d\n",age);
//    printf("  *\n * *\n* * *\n");
//    //scanf :阻塞函数;
//    int age1 = 0;//赋值为0,为了清空数据
//    printf("请输入一个年龄:\n");
//    //scanf: 当遇到换行(回车)时候会执行
//    //1.接收单个变量的值,在输入之前如果我们输入了回车 或者tab 都会被忽略
//    
//    scanf("%d",&age1);// & 它是取地址符,作用是:将我们用户输入的数据存储到我们对应的变量当中
//    printf("age1=%d\n",age1);
    
    //请输入两个数字,并求和
//    int num1 = 0;
//    int num2 = 0;
//    int sum = 0;
//    printf("请输入两个数字:\n");
//    scanf("%d%d",&num1,&num2);//注意:取地址(&)时"%d%d"之间不要加任何东西(例如, \n),否则不能正确输出,加(\n)例如(%d\n%d\n)会抵消( \n );加 (,)例如(%d,%d)必须输入(,)否则只会输出num1的值.
//    //scanf("%d",&num1);
//    //scanf("%d",&num2);
//    sum = num1+num2;
//    printf("sum = %d\n",sum);
    /*
     scanf使用注意:
    1. 在我们scanf输入函数当中不要添加\n,因为\n会抵消回车,如果想要继续使程序执行,那么就在控制台输入一串英文(随便输入),就会继续抵消
     2.我们scanf函数在用户输入的时候,要根据" ",内部的一些符号进行输入(也就是有什么就去输入什么)
     3.最好的做法就是什么也不加(直接占位符就OK)
     
     */
#pragma mark -- 内存缓存区--
//    int a =2, b = 3;
//    char c = '0';
//    printf("请输入对应的数据类型:\n");
//    scanf("%d %c%d",&a,&c,&b);
//    printf("a=%d\nc=%c\nb=%d",a,c,b);
    
    //输出的格式控制:
    /*
     %2d:2表示输出的宽度,不足两位,在最前面补空格,并且输出内容又对齐
     %02d:0代表,不足2位的时候,在最前面补0
     %-4d:-代表的是,输出的内容左对齐
     */
    
    
    int age = 9;
    printf("%d\n",age);
    printf("%2d\n",age);
    printf("%02d\n",age);
    printf("%-4d\n",age);

//遇到return 0;结束
      return 0;
    
    
}

ios基础操作的更多相关文章

  1. iOS 基础日记-修饰符

    今晚随便温习了一下iOS 基础关于修饰符这块的东西,下面简单的来描述一下,其中有的也是在网络学习到的: strong与weak是由ARC新引入的对象变量属性 ARC的解释:ARC引入了新的对象的生命周 ...

  2. iOS基础问答面试

    <简书社区 — Timhbw>iOS基础问答面试题连载(一)-附答案:http://www.jianshu.com/p/1ebf7333808d <简书社区 — Timhbw> ...

  3. [iOS基础控件 - 5.5] 代理设计模式 (基于”APP列表"练习)

    A.概述      在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能      1.按钮点击后,显示为“已下载”,并且不 ...

  4. [置顶] IOS 基础入门教程

    IOS 基础入门教程 教程列表: IOS 简介 IOS环境搭建 Objective C 基础知识 创建第一款iPhone应用程序 IOS操作(action)和输出口(Outlet) iOS - 委托( ...

  5. iOS 基础入门--Bull' Eye 小游戏 

      说明   Bull's Eye小游戏是http://www.raywenderlich.com/store/ios-apprentice里非常酷的入门demo 跟着该教程一步步做下来便有了 ...

  6. python基础操作以及hdfs操作

    目录 前言 基础操作 hdfs操作 总结 一.前言        作为一个全栈工程师,必须要熟练掌握各种语言...HelloWorld.最近就被"逼着"走向了python开发之路, ...

  7. MYSQL基础操作

    MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...

  8. IOS基础学习-2: UIButton

    IOS基础学习-2: UIButton   UIButton是一个标准的UIControl控件,UIKit提供了一组控件:UISwitch开关.UIButton按钮.UISegmentedContro ...

  9. 【Learning Python】【第二章】Python基础类型和基础操作

    基础类型: 整型: py 3.0解决了整数溢出的问题,意味着整型不必考虑32位,64位,有无符号等问题,你写一个1亿亿亿,就是1亿亿亿,不会溢出 a = 10 ** 240 print(a) 执行以上 ...

随机推荐

  1. redis和memcached

    Redis 1.主从配置(主从复制不会阻塞master.) 1)bind  192.168.1.2(请修改成本机的IP地址,要不然,客户端无法进行访问) 2)slaveof 192.168.1.1 6 ...

  2. css+div解决文字溢出控制显示字数

    一.一般的文字截断(适用于内联与块):  Example Source Code [www.mb5u.com] .text-overflow {display:block;/*内联对象需加*/widt ...

  3. c++打开浏览器

    调用外部命令 如果用默认浏览器,就调用ShellExecute(NULL, _T("open"), _T("explorer.exe"), _T("h ...

  4. [转]使用 Shell 对进程资源进行监控

    原文:http://www.ibm.com/developerworks/cn/linux/l-cn-shell-monitoring/ 使用 Shell 对进程资源进行监控 检查进程是否存在 在 对 ...

  5. Java 动态生成复杂 Word

    Java 动态生成复杂 Word 阅读目录 1. 制作 Word 模版,将你需要动态生成的字段用${}替换.2. 将 Word文档保存为 xml .3. 引入项目. 项目中需要用 java 程序生成d ...

  6. 横版CG场景

    http://www.cgvoo.com/thread-27211-1-1.html <ignore_js_op><ignore_js_op><ignore_js_op& ...

  7. 点餐系统Sprint1总结

    经过第一个阶段的冲刺,大家基本上都熟悉自己要做什么,并且把界面做了出来.通过这个阶段的冲刺,大家都学到了很多东西,团队更加默契,遇到不懂的都会提出来一起解决. 团队贡献分 148彭宏亮 20 150张 ...

  8. java.lang.InstantiationException-反射机制

    package com.test.classtest; public class test { public static void main(String[] args) throws Except ...

  9. 【开园 and 计划】

    开园 啊啊啊啊啊啊啊啊,郁闷啊,头一回写博客,一刻钟前保存的草稿为何荡然无存??? 那少废话直击要点:今日乃我开园之日,开园为了改变.为了学习.为了积累. 计划 最长为时 3月,截止到 2016年9月 ...

  10. Jmeter学习(二)

    1. Jmeter预置知识-http协议 应用层协议http,ftp,smtp 1) http之url http 超文本传输协议,基于请求与响应模式的,无状态,应用层协议. http url: htt ...