• C语言程序设计笔记1:程序设计与C语言 蓝银杏


    这个系列是用来解决学校C语言课程的,并不适用于ACM和OI

    本系列博客分为2部分,分别是 C语言程序设计笔记(网课) 和 课堂总结(线下课)

    欢迎转载我的博客:https://www.cnblogs.com/ssw02/p/15994555.html


    C语言程序设计笔记1-1

    1.什么是计算机语言

    计算机只是一种执行命令的工具,我们需要让计算机清楚每一步要怎么做。但编程语言并不是人与计算机交谈的语言

    而程序则是使用特殊编程语言来表达如何解决问题的,可以详细告诉计算机处理过程和步骤。

    2.程序的执行

    程序执行的两种不同方式:解释 和 编译

    我们常说C语言是一种编译型语言(高级语言),有确定的运算性能,而JavaScript则是解释型语言(脚本语言),有特殊的计算能力。但是语言本身没有解释和编译的区分,只是执行方式有区别而已

    解释:借助一个程序,那个程序能够试图理解你的程序,然后按照你的要求进行执行

    编译:借助一个程序,将使用高级语言所写的程序翻译成机器语言,然后这个机器语言写的程序可以执行

    3.习题答案:

    1.计算机本身最擅长的能力是重复

    2.编程语言并不是和计算机交谈的语言

    3.CPU不能直接运行由人类编写的高级程序


    C语言程序设计笔记1-2

    1.C语言起源

    在《深入理解计算机系统》这本书中对C的起源有下面3个概括

    C语言与Unix操作系统关系密切

    C语言小而简单

    C语言是为实践目的而设计的

    2.为什么选择C语言进行学习

    简单易学、使用范围广、易于移植到不同计算机上

    C语言也是一种收到广泛认可的工业语言

    常见用于:操作系统、嵌入式系统、驱动程序、底层驱动、图形引擎、图像处理、声音控制等等

    也导致了其开发效率大于学习过程和开发乐趣,日常应用很少用C语言编写,学习C语言的过程主要是练习代码,非真实软件

    3.IDE(集成开发环境)

    IDE一般包括代码编辑器、编译器、调试器和图形用户界面等

    其中编辑器和编译器是让C能够运行不可或缺的

    备注:使用标准为C99标准

    4.习题答案

    关于C语言,以下说法错误的有:B

    A.
    C语言是和Unix操作系统一同发展起来的
    B.
    C语言不能写图形界面的软件
    C.
    C语言一般是编译执行的
    D.
    C语言诞生于1970年代
    

    2
    轻量级的编程软件,如Geany+MinGW或Sublime Text+MinGW,与专门的IDE如Dev C++相比,什么功能没有了? A

    A.
    单步调试
    B.
    源代码编辑时的语法高亮
    C.
    编译程序
    D.
    运行程序
    

    IDE的中文翻译是:集成开发环境


    C语言程序设计笔记1-3

    1.第一个程序

    #include<stdio.h>
    int main(){
        printf("Hello,World\n");
        return 0 ;
    }
    

    #include<stdio.h> 头文件

    int main(){ }主函数,这是必要的程序框架

    printf("输出内容")输出 “”里面是要输出的字符串 \n表示输出后换行,不会按照原样输出\n

    return 0 给上面的main函数返回值 0

    程序也是需要断句的,我们使用 ; 来表示,不能用中文分号,否则会报错

    2.编译和运行

    代码写好后,我们就需要进行编译和运行

    注意,我们通常运行的显示是在 终端(就是那个小黑框) , VScode可以在下方监视器上找到,也可以在launch.json文件里面找到对应设置改为弹出终端, DevC++则是会直接弹出

    3.输出结果

    在不报错的情况下,我们的终端上便会显示出 Hello,World

    如果报错了的话,就要根据报错的位置进行修改。

    这里先说C和C++比较烦的一点,就是它报错的地方不一定是真正导致错误的地方。如果碰到这种情况,新手时期可以先从报错点周围看看有没有错,等之后慢慢熟练了,就知道如何查错了。

    4.输出一个数字

    #include<stdio.h>
    int main(){
        printf("%d",12);
        return 0 ;
    }
    

    和我们写的第一个程序相比,区别在printf("%d",12)这里

    %被称为格式占位符,是在C/C++语言中格式输入函数,如scanf、printf等函数中使用。其意义就是起到格式占位的意思,表示在该位置有输入或者输出

    %d 则是代表格式占位了一个int类型的实数

    这里占位符按照从左往右的方式,例如printf("%d%d",12,45)
    这时左边的%d对应12,右边的%d对应45,得到输出1245

    如果我们想要输出12 45,则要在两个占位符中间打空格,让空格被视为字符串输出,即printf("%d %d",12,45)

    5.实现一个加法

    #include<stdio.h>
    int main(){
        printf("%d",12+45);
        return 0 ;
    }
    

    于上面的程序的区别在于%d对应的是 12+45 的运算结果,但还是一个int类型的实数,但是输出只有57

    如果我们想要输出12+45=57的话,则可以这样

    printf("12+45=%d",12+45)这样%d前面的12+45=会以字符串的方式输出,而%d则对应57的运算结果

    6.常见运算在C中的对应

    加法 + eg. a=4+5 结果a为9

    减法 - eg. a=4-5 结果a为-1

    乘法 * eg. a=4*5 结果a为20

    除法 / eg. a=6/5 结果a为1,因为会取整(本质上是二进制计算)

    取余 % eg. a=12%5 结果a为2

    括号 () 会改变运算优先级

    7.习题程序

    这个是下一章节用的,详见:https://www.cnblogs.com/ssw02/p/15906634.html

    #include <stdio.h>
    
    int main()
    {
        int price = 0;
        printf("请输入金额(元):");
        scanf("%d", &price);
        int change = 100 - price;
        printf("找您%d元。\n", change);
        return 0;
    }
    
  • 相关阅读:
    BZOJ4569 : [Scoi2016]萌萌哒
    2016浙江省赛过山车记
    BZOJ4546(原) : 三元组
    BZOJ4539 : [Hnoi2016]树
    BZOJ4537 : [Hnoi2016]最小公倍数
    BZOJ4538 : [Hnoi2016]网络
    BZOJ4527 : K-D-Sequence
    BZOJ4504 : K个串
    BZOJ4471 : 随机数生成器Ⅱ
    BZOJ3659 : Which Dreamed It
  • 原文地址:https://www.cnblogs.com/ssw02/p/15904239.html
Copyright © 2020-2023  润新知