//
//  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. XML转换JSON的工具使用方法

    1.xml的文件,文件的内容如下: <?xml version="1.0" encoding="UTF-8" standalone="yes&q ...

  2. Makefile编译库

    funs.h: #ifndef __FUNS_H__ #define __FUNS_H__ void fun1(); #endif funs.c #include "funs.h" ...

  3. 在 ASP.NET MVC 中使用 HTTPS (SSL/TLS) -- 学习

    在 ASP.NET MVC 中使用 HTTPS (SSL/TLS) IS 7如何实现http重定向https HTTPS 升级指南

  4. 基于bootstrap + php +ajax datatable 插件的使用

    Datatables是一款jquery表格插件.它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能. 下面是我学习datatables写的一个服务器端(php)分页例子,该功能包含的功能 ...

  5. IOS textView获取光标定位,以及选中

    当textview成为第一响应者的时候就会调用一个协议方法 - (void)textViewDidChangeSelection:(UITextView *)textView; 在这个协议方法中可以实 ...

  6. [转]iOS开发中@property的属性weak nonatomic strong readonly等介绍

    转载地址: http://www.lvtao.net/ios/504.html @property与@synthesize是成对出现的,可以自动生成某个类成员变量的存取方法.在Xcode4.5以及以后 ...

  7. angular中不同controller传值问题

    利用angularJS中service单例模式的特性,服务(service)提供了一种能在应用的整个生命周期内保持数据的方式,能够在控制器之间进行通信,且能保证数据的一致性. 一般我们都会封装serv ...

  8. js正则表达式

    正则表达式分析页面:https://regexper.com/ 可以很清楚的分析正则,加深理解 var reg=/\bis\b/; 'He is a boy.This is a dog.Where i ...

  9. VirtualBox 共享文件夾

    説明:host為window10,guest為centos7 一.安装VBoxLinuxAdditions 1. 在guest上挂载virtualbox安装目录下的VBoxGuestAdditions ...

  10. 读《编写可维护的JavaScript》第六章总结

    第六章 避免使用全局变量 JavaScript执行环境在很多方面都有其独特之处,全局变量就是其中之一.“全局变量”是一个神秘的对象,它表示了脚本的最外层上下文. 在浏览器中,windows对象往往重载 ...