// 导入头文件(stdio.h),标准输入输出的头文件,
#include <stdio.h>

// 程序的入口
int main(int argc, const char * argv[]) {
    // insert code here...
    printf("Hello, World!\n");
    
    // 这是一个单行注释,注释掉一行代码,被注释掉的代码不会被执行,只是做一个标识的作用。注释在编码的过程中是必不可少的,写注释的目的一方面是为了工作的交接和团队协作,另一方面也是给自己一个提示。注释还可以把我们目前用不到的代码,但是以后可能会用到的代码暂时不进行编译。一个工程中有效注释应该占代码的60%.
    /*
        这是多行注释,能注释掉多行代码,这部分的代码都不会执行
    */
    // byte是计算机中存储的最小单位,无符号的情况下1byte能表示的数字范围是0~255,1byte = 8bit位  
    /*
    // 变量有三部分组成   类型修饰符 变量名 = 初始值
    // 定义一个变量age,用来表示年龄,类型是int,初始值为25
    int age = 25;
    // 定义一个变量string,类型是char,初始值为'A'
    char string = 'A';
    
    // 变量的命名规范:1、只能有数字、字符和下划线组成,并且数字不能开头;
    int _number = 3;
    int 好 = 5; // 变量名可以使用中文,但是在开发的使用严禁这样使用
    // 2、不能和系统关键字(保留字)重名
    //    int int = 4;
    // 3、变量名不能重复
    //    int age = 30;
    // 4、变量的命名要规范,做到见名知意
    int number1 = 3;
    int number2 = 5;
    */
    int num1 = 501;
    float num2 = 2.0;
    float num3 = num1 / num2; // 如果"/"两边都是整数的话,那么他们的结果也是整数

// 模运算'%',取余运算符
    int num1 = 5;
    int num2 = 3;
    int num3 = num1 % num2;
   // 自增运算"++",自减运算"--"
    num3 = num1++; // 该行代码相当于先把num1的值赋值给num3(num3 = num1;),然后把num1进行加1,把结果赋值给        num1(num1 = num1 + 1;)

num3 = ++num1; // 该行代码相当于先把num1加1,把结果赋值给num1(num1 = num1 + 1;),然后把num1的值赋给num3(num3 = num1;)
    
    
    num2 += num1;
    
    // 两种运算符:算数运算符 赋值运算符, 优先级:算数运算符 > 赋值运算符
    num3 = (num1++ + ++num2) * 3;

格式化输出函数printf()

float age = 27.1;
    printf("age = %f\n", age); // 格式化输出函数,普通字符原样输出,如果想要输出对应变量的值,那么需要使用对应的转义字符(转化符)
    
    char sex = 'm';
    printf("性别是:%c\n", sex);
    
    short num1 = 30;
    printf("%hd\n", num1);
    
    long num2 = 20;
    printf("num2 = %ld\n", num2);
    
    // 无符号长整型
    unsigned long num3 = 100;
    printf("num3 = %lu\n", num3);
    
    printf("%4d\n", 122);
    
    printf("%.2f\n", 2.223);
    
    printf("%-4d\n", 12); // 左对齐
    
    // %m.nf,如果输出的总位数大于m,那么小数点前面的原样输出,小数点后面保留n位,如果n+1再加整数位个数小于m的话,那么在输出的最前面补空格
    printf("%10.2f\n", 12.3345);
    
    // '\n'是换行符
    printf("\\ \n"); // 如果想输出'\'的话,需要使用'\\'
    printf("100%%\n"); // 如果想输出'%', 那么需要使用两个'%%'

格式化输入函数scanf()
    
    // 定义变量num1和num2,用来接收从控制台输入的数字
    int num1 = 0;
    int num2 = 0;
    printf("请输入两个数字,数字之间用空格分开:");
    scanf("%d %d", &num1, &num2); // '&'取地址符
    getchar(); // 从键盘缓存区中取出一个字符
    printf("num1 = %d, num2 = %d\n", num1, num2);
    
    char string = '0';
    printf("string = %c\n", string);
    printf("string = %d\n", string);
    
    scanf("%c", &string);
    getchar(); // 从键盘缓存区中取出一个字符
    
    printf("stringA = %d", string);
    
    
    
    return 0;

C语言 ---- 基本数据类型和基本运算 iOS学习-----细碎知识点总结的更多相关文章

  1. c语言基础:数据类型 分类: iOS学习 c语言基础 2015-06-10 21:43 9人阅读 评论(0) 收藏

    C语言基本数据类型大体上分为: 整型 和 浮点型   字节: 计算机中最小的储存单位     1 Byte = 8 bit 整型:         int     4                  ...

  2. C语言 ---- 指针 iOS学习-----细碎知识点总结

    内存的访问形式:1.直接访问:通过变量名进行访问.2.间接访问:先找到变量存放的地址,然后根据地址去访问对应的内存空间. 指针--- // 定义一个整形指针变量,用来存储num1在内存中的地址    ...

  3. C语言 ---- 数组 iOS学习-----细碎知识点总结

    #pragma mark - 数组:用来存放同一数据类型的数据 // 数组的定义:类型说明符 数组名[常量表达式] = {值1, 值2, 值3...};    // 定义一个float类型的数组,用来 ...

  4. C语言 ---- 循环分支 iOS学习-----细碎知识点总结

    #import <Foundation/Foundation.h>  // #import是OC种的导入头文件或者是系统框架的指令 // 定义了一个Season枚举类型enum Seaso ...

  5. C语言 ---- 函数 结构体 iOS学习-----细碎知识点总结

    函数的定义     返回值类型 函数名(形式参数列表) {        函数的实现     } 函数不允许嵌套定义 如果函数的定义在主调函数之后,那么要进行提前声明才能使用. // 匿名结构体,结构 ...

  6. OC ---- 字典集合 iOS学习-----细碎知识点总结

    实例方法的创建 NSDictionary *wukong = [[NSDictionary alloc] initWithObjectsAndKeys:", @"age" ...

  7. OC ---- 字符串 数组 iOS学习-----细碎知识点总结

    NSString *urlString = [NSString stringWithFormat:@"http://www.apple.com"];        // 获取字符串 ...

  8. C语言基础总结 分类: iOS学习 c语言基础 2015-06-11 10:08 23人阅读 评论(0) 收藏

    //欲练此功必先自宫!!!     //第一天:C语言的基础     //进制     //2进制, 10进制, 8进制, 16进制     //注:8进制数前加0, 16进制数前加0x        ...

  9. C语言基础:数组 分类: iOS学习 c语言基础 2015-06-10 21:40 7人阅读 评论(0) 收藏

    数组:是由一组具有相同数据类型的数据组合而来. 数组定义:元素类型修饰符 数组名[数组个数]={元素1,元素2....};  int arr[ 2 ]={1,2};    //正确 int arr[ ...

随机推荐

  1. The 2015 China Collegiate Programming Contest K Game Rooms hdu 5550

    Game Rooms Time Limit: 4000/4000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)Total ...

  2. 【原】iOS多线程之NSThread、NSOperationQueue、NSObject和GCD的区别

    区别: Thread: 是这几种方式里面相对轻量级的,但也是使用起来最负责的,你需要自己管理thread的生命周期,线程之间的同步.线程共享同一应用程序的部分内存空间, 它们拥有对数据相同的访问权限. ...

  3. BZOJ4426 : [Nwerc2015]Better Productivity最大生产率

    如果一个区间包含另一个区间,那么这两个区间是否在一起的生产率是一样的. 将所有这种包含了其他区间的区间放入数组$b$,其余的放入数组$c$,有多个相同的时候则从$b$移一个到$c$. 那么$c$里所有 ...

  4. zookeeper清除日志文件工具

    zookeeper运行时间长了以后,日志会成为一个比较大的问题.比如作者压力测试hbase一周以后,zookeeper日志文件达到了10G的规模.由于zookeeper日志文件不能随意删除,因为一个长 ...

  5. BZOJ 1412 & 最小割

    什么时候ZJ省选再现一次这么良心的题吧... 题意: 在一个染色的格子画分割线,使其不想连,求最少的线段 SOL: 裸裸的最小割.题目要求两种颜色不想连,我们把他分到两个集合,也就是把所有相连的边切断 ...

  6. Recurrent Neural Network(循环神经网络)

    Reference:   Alex Graves的[Supervised Sequence Labelling with RecurrentNeural Networks] Alex是RNN最著名变种 ...

  7. web移动端性能调优及16ms优化

    本文只是一个索引,收集了网络上大部分关于调试及优化方面的文章,从中挑选了一些比较好的文章分享给大家. 移动端性能不及桌面浏览器性能的10分之1,特别是在android设备良莠不齐的情况下,性能显得尤为 ...

  8. 原生js添加和删除类

    原生js添加和删除类: this.className +=" "; this.className = this.className.replace(" 原来的类" ...

  9. 20145308刘昊阳 《Java程序设计》第3周学习总结

    20145308刘昊阳 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 认识对象 要产生对象必须先定义类,类是对象的设计图,对象是类的实例 类是从少数实例推广到大量相似实例的 ...

  10. [深入浅出WP8.1(Runtime)]应用实例——移动截图

    10.2应用实例——移动截图 移动截图例子是实现一个把一张图片的某个部分截取出来的功能,并且用户可以选定截取的图片区间.那个该例子会使用ManipulationDelta事件来实现对截取区间的选择.然 ...