C语言基础篇

本文介绍了计算机如何通过编程解决问题,重点讲解了C语言作为基础编程语言的重要性,包括其发展历史、用途、以及基本概念如变量和四则运算。还提到编程语言的编译与解释区别,以及如何使用DevC++进行C语言编程练习。
摘要由CSDN通过智能技术生成

计算机和编程语言

计算机是生活必需品
  • 如果想要自己设计一些功能和行为,让计算机按照你的意图做事情,就需要写程序了
  • 本课程的主要的目的是通过学习编程,来理解计算机是如何解决问题的,理解计算机的能与不能,擅长于非擅长。
计算机如何解决问题
  • 请给我一杯水
    1. 转身到厨房
    2. 找到一个杯子
    3. 找到一个水壶
    4. 在杯子中倒入一些水
    5. 拿着杯子走回桌子
  • 人:What to do
  • 计算机:How to do
计算机语言
  • 程序是用特殊的编程语言写出来表达如何解决问题的
  • 不是用编程语言和计算机交谈,而是描述要求它如何做事情的过程或方法
算法
  • 我们要让计算机做计算,就需要想这样找出计算的步骤,然后用编程写出来
  • 计算机做的所有的事情都叫做计算
计算机的思维
  • 2x+6=20
    • 解方程
    • 枚举
    • 二分搜索
程序的执行
  • 解释:借助一个程序,那个程序能试图理解你的程序,然后按照你的要求执行
  • 编译:借助一个程序,就像是一个翻译,把你的程序翻译成计算机真正能懂的语言--------机器语言---------写的程序,然后这个机器语言写的程序就能直接运行了
解释语言 VS 编译语言
  • 语言本身无编译/解释之分
  • 常用的执行方式而已
  • 解释性语言有特殊的计算能力
  • 编译型语言有确定的运算性能

C 语言

为什么是C,不是其他语言?
  • 现代的编程语言语法上的差异很小
    • 几乎都是 C-like 语言
  • 语言的能力/适用领域主要是由
    • 库和
    • 传统所决定的
C 语言
  • C语言是从B语言发展而来的,B语言是从BCPL发展而来的,BCPL是从 FORTRAN发展而来的
  • BCPL和B都支持指针间接方式,所以C也支持了
  • C语言还受到了PL/I的影响,还和PDP-II的机器语言有很大的关系
  • 1973年3月,第三版的Unix上出现了C语言的编译器
  • 1973年11月,第四版的Unix (System Four) 发布了这个版本是完全用C语言重新写的
C的发展与版本-标准
  • 1989年ANSI发布了一个标准--------ANSI C
  • 1990年ISO接受了ANSI的标准-------C89
  • C的标准在1995年和1999年两次更新------C95 和 C99
  • 所有的当代编译器都支持C99了
C语言用在哪里?
  • 操作系统
  • 嵌入式系统
  • 驱动程序
  • 底层驱动
    • 图形引擎、图像处理、声音效果
C是一种工业语言
  • 开发效率>>学习过程
  • 开发效率>>开发乐趣
  • 日常应用很少直接用C语言编写
  • 学习C的过程主要是写练习代码
    • 而非真是软件
编译——>运行
  • C需要被编译才能运行,所以你需要
    • 编辑器
    • 编译器
  • 或者,IDE(集成开发环境)
推荐的编程软件

第一个C程序

#include <stdio.h>

int main()
{
	printf("Hello World!\n");
	
	return 0;
}
输出
  • printf("Hello Would!\n")
  • “” 里面的内容叫做"字符串", printf 会把其中的内容原封不动地输出
  • \n 表示换行
暂定
  • 如果你在使用Dev C++ 4.9.9.2
    • system(“pause”);
  • 让程序运行完成后,窗口还能留下
    • 不是Dev C++ 4.9.9.2 就不需要这个了
程序中的错误
  • 编译的时候发现的错误所在的地方会以红色的底表示出来
  • 具体的错误原因在下方的窗口里(是英文的)
  • C的编译器给出的错误提示往往不是那么好"猜"
不要用中文!!!
  • 中国学生还有一个极其常见的低级错误,就是用了中文输入法来输入程序。那些标点符号在中文和英文可能看上去相似,但是对于计算机是完全不同的符号,如果你还开了全角标点的话,问题就更严重了
做计算
  • printf("%d \n", 23+43);
    • %d 说明后面有一个整数要输出在这个位置上
  • printf("23+43=%d \n", 23+43);
四则运算
四则运算C符号意义
++
--
×*
÷/
%取余
()()括号
  • % 表示取两个数相除后的余数
以下两个小程序
  • Hello.c

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

    #include <stdio.h>
    
    int main()
    {
        int price = 0;
    
        printf("请输入金额(元):");
        scanf("%d", &price);
    
        int change = 100 - price;
    
        printf("找您%d元。\n", change);
    
        return 0;
    }
    

计算

1.1变量

做计算

int price = 0;  // 定义了一个变量,变量的名称是 price,类型是int,初始值是0
printf("请输入金额(元):");
scanf("%d", &price);
int change = 100 - price;
printf("找您%d元。\n", change);
/*
变量是一个保存数据的地方,当我们需要在程序里保存数据时,比如上面的例子中要记录用户输入的价格,就需要一个变量来保存它。用一个变量保存了数据,"它才能参加到后面的计算中,比如计算找零。
*/
变量定义
  • 变量定义的一般形式就是:
    • <类型名称> <变量名称>;
    • int price;
    • int num;
    • int price,num;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值