460 likes | 644 Views
C 语言程序设计基础. 教师:李敏杰 计算机教学与网络信息部 Email: liminjie@bicea.edu.cn. 为什么学习程序设计语言?. 计算机与程序 : 要让计算机按照人们的愿望工作,必须由人们事先编制好程序,并输入到计算机,让计算机执行程序才能产生相应的操作结果。. (3) C 语言 void main( ) { int A=7+8; printf(“A=%d”,A); }. (1) 机器语言. (2) 汇编语言程序
E N D
C语言程序设计基础 教师:李敏杰 计算机教学与网络信息部 Email: liminjie@bicea.edu.cn
为什么学习程序设计语言? 计算机与程序:要让计算机按照人们的愿望工作,必须由人们事先编制好程序,并输入到计算机,让计算机执行程序才能产生相应的操作结果。
(3) C语言 void main( ) { int A=7+8; printf(“A=%d”,A); } (1) 机器语言 (2) 汇编语言程序 ORG 00H ; START LD A,7 ; ADD A,8 ; HALT ; END START ; 00 11 11 00 00 00 0111 11 00 01 10 0000 10 00 01 11 0110 程序设计语言的发展过程 (2) 汇编语言:用特定的“助记符号”代替0和1来表示指令的程序设计语言称为汇编语言 (3) 高级语言:接近于人们习惯的自然语言(英文)和数学语言称为“高级语言”。 (1) 机器语言:一个型号机器语言的指令的集合称为该计算机的机器语言 要计算 A=7+8
为什么学习C语言程序设计? 1、 C语言简洁、紧凑,使用方便、灵活 , 被称为“程序员的语言”。国际上普遍采用C语言进 行程序设计的训练。 2、允许直接访问物理地址,可直接对硬件进行操作。兼有高级和低级语言的功能 。 3、目标代码质量高,程序执行效率高。只比汇编程序生成的目标代码效率低10%-20%。
为什么学习C语言程序设计? 4、 用C语言编写的程序可移植性好。基本上不做修改就能用于各种型号的计算机和各种操作系统。 5、有助于打破常规思维,培养创新思维。在调试程序的过程中提高分析问题、解决问题的能力。 例如:s=4; s=s+2; 6、C语言是学习C++ 、C# 、Java等语言的基础。
问题:既然有了面向对象的C++语言,为什么还要学习C语言?问题:既然有了面向对象的C++语言,为什么还要学习C语言? 解释1:C++是由于开发大型应用软件的需要而产生的,并不是所有的人都要去编写大型软件; 解释2:面向过程的语言是面向对象语言的基础。C是面向过程的语言, C++是面向对象的语言,所以C++不太适合程序设计的初学者。
课程内容 • C语言概述 • 数据类型、运算符与表达式 • 简单的C 程序设计 • 数组 • 函数 • 指针 • 结构体
课程要求 学时安排:总课时64学时,其中上课32学时,上机32学时。 成绩评定:考试课,2学分。 平时成绩占30%(上机/测验/作业/考勤/学习态度) 期末考试成绩占70% 作业要求:发下作业后再补交,成绩按50%计, 连续两次不交的作业成绩按0分计。
上机实习 上机时间: 注意事项:携带教材、上机手册和习题集 携带存储程序的软盘/U盘 保持机房环境卫生,不准在机房饮食 禁止在机房玩游戏
学习方法: 多上机调程序 多观摩别人的程序 问人之前,先问自己。 培养自我解决问题的能力。 多看相关的书
学习网站: 网络学堂 全国计算机等级考试官方网站 www.ncre.cn
参考书: • 《C语言实用程序设计100例》 • 段兴 人民邮电出版社 • 《全国计算机等级考试真题(笔试+上机) • 详解与样题精选》 郝立 清华大学出版社 • 《程序设计方法》人民邮电出版社 (国外著名高等院校信息科学与技术优秀教材)
I can do it! 每一株花最初都是草 每一棵草最终都会开花
第一章 C语言概述 1.4 简单的C语言程序 例1.1: /*文件包含*/ /*主函数 */ /*函数体开始*/ /*输出语句*/ /*函数体结束*/ #include <stdio.h> void main( ) { printf ("This is a C program.\n"); } 说明:本程序的作用是输出一行信息: This is a C program.
(1)C程序由函数组成,其中有且仅有一个 main主函数。 (2)函数由函数头部和函数体组成,{ }是函数体开始和结束的标志,不可省略。 (3)函数体由语句组成,语句以分号结束。 (4)printf()的功能: (i) 通常“”中的内容原样输出 (ii)\n的作用:光标移到下一行 小结 (5)使用标准库函数时应在程序开头一行写: #include <stdio.h>
练习1:编程打印出字符“Hello World!” 练习2:编程打印出如下字符 ************* ************* Hello World! ************* *************
/*求两数之积*/# include < stdio.h > voidmain() { int a, b, c; /*声明三个整数类型变量*/ a=31; b=5; c=a * b; printf("c = %d \n", c); } 例1.2: 说明:输出一行信息:c = 155
练习3: 编程计算两个整数的平均值 #include<stdio.h> void main() { int a,b,aver; a=4; b=8; aver=(a+b)/2; printf("aver=%d\n",aver); } printf("请输入两个整数:"); scanf("%d, %d",&a,&b);
说明: /*……*/表示注释。注释只是给人看的,对编译和运行不起作用。所以可以用汉字或英文字符表示,可以出现在一行中的最右侧,也可以单独成为一行。
# include < stdio.h > voidmain() { int a=5, b=3, c; c=a; a=b; b=c; printf("a=%d, b=%d\n", a, b); }
例1.4: 取a,b之中较大者,赋值给变量max,最后输出max的值。
# include < stdio.h > voidmain( ) {int a, b, max; scanf("%d,%d", &a, &b); if(a>b) max=a; else max=b; printf("max=%d", max); } /*输入变量a和b的值*/
# include < stdio. h > voidmain() { int a,b,c; int max( int x, int y); scanf("%d,%d",&a,&b); c = max(a,b); /*调用max函数,将得到的值赋给c */ printf("max=%d\n",c); } int max( int x, int y) { int z; if(x>y) z=x; else z=y; return z; }
1.5 上机运行C程序的步骤与方法 目前使用的大多数C编译系统都是集成环境(IDE)的。可以用不同的编译系统对C程序进行操作。 常用的有 Turbo C 2.0 Turbo C++ 3.0 Visual C++
编辑 源程序 hello.c 目标程序 hello.obj 有错? 库函数 和其它目 标程序 连接 可执行程序 hello.exe 执行 结束 C程序的上机步骤 开始 • 启动C编译系统; • 2.输入编辑源程序; • 3. 对源程序进行编译(compile); • 4. 与库函数连接(build) ; • 5. 运行目标程序; 编译
编译 用高级语言编写的程序称为“源程序”。 计算机只能识别和执行由0和1组成的二进制指令,而不能识别和执行高级语言源程序编写的指令。 为了使计算机能执行高级语言源程序,必须通过“编译程序”将高级源程序翻译成二进制形式的“目标程序”。
程序的调试 程序调试的任务是发现和改正程序中的错误,使程序能正常运行。编译系统能检查出程序中的语法错误。 语法错误分为两类: error:致命错误 warning:警告,轻微错误 如果程序中有error,就通不过编译,无法形成目标程序,更谈不上运行; warning不影响生成目标程序和可执行程序,但有可能影响程序的运行结果,因此也应当改正,使程序既无error,也无warning。
Visual C++的上机操作 C源程序可以在Visual C++集成环境中进行编译、连接和运行。现在常用的是Visual C++ 6.0版本。
VC++6.0 的使用 1.安装VC++6.0和进入VC+ +6.0集成环境 (1) Visual C++ 6.0适用于Windows环境。安装完Visual C++6.0系统后,双击Visual C++6.0图标,就能进入VC++ 6.0集成环境 。
(2) VC++主窗口 项目工作区窗口(用来显示所设定的工作区的信息) 程序编辑窗口(用来输入和编辑源程序)
2. 输入和编辑源程序 (1)新建一个源程序 ① 在VC++的主菜单栏中选择“File”,然后选择 “New ”
(1) C程序文件的扩展名为.c,如果不写扩展名,系统会默认为C++源程序,自动加扩展名.cpp (2) (3) (4)
②输入和编辑源程序 单击“OK”按钮后,回到VC++主窗口程序,编辑窗口已激活,即可输入和编辑源程序。
③源程序的保存 检查无误后,在主菜单栏中选择“File”(文件) ,并在其 下拉菜单中选择“Save”(保存)项
3. 程序的编译 单击主菜单栏中的“Build”,在其下拉菜单中选择“Complie c1-1.c”项。
4. 程序的连接生成目标文件后,把程序和系统提供的资源(如函数据库、头文件)建立连接。选择“Build”→“Build test.exe”。
执行连接后,在调试输出窗口中显示连接时的信息,生成可执行文件c1-1.exe。执行连接后,在调试输出窗口中显示连接时的信息,生成可执行文件c1-1.exe。
5. 程序的执行 执行c1-1.exe 文件,选择“Build”→“! Execute c1-1.exe ”
程序执行后,屏幕切换到输出结果的窗口,显示输出结果。程序执行后,屏幕切换到输出结果的窗口,显示输出结果。 第1行: 程序的输出 第2行:是VC++在输出完运行结果后由VC++6.0系统自动加上的一行信息,通知用户∶“按任何一键以便继续”。
说明: 选择菜单“Build”→“Build”( 或按“F7”键)一次完成编译与连接。但提倡初学者分步进行编译和链接,因为程序出错的机会较多,最好等到上一步完全正确后才进行下一步。
Visual C++的上机操作界面 C程序文件的扩展名为.c,如果不写扩展名,系统会默认为C++源程序,自动加扩展名.cpp
(2)打开一个已有的程序 ①在 “我的电脑”中按路径找到已有的C程序名; ②双击此文件名,则进入了VC++集成环境,并打开了该文件,程序已显示在编辑窗口中; ③修改后选择“File”(文件) →“Save”(保存),保存在原来的文件中;(3)通过已有的程序建立一个新程序 ①打开任何一个已有的源文件
初学者常见的错误 1. missing ';' before identifier ‘ printf ' 标识符 ‘ printf '缺少“;” 2.Declaration syntax error 声明语法错误 3. ‘a’ : undeclared identifier 未定义标识符 ‘a’
什么是程序设计语言? 计算机程序设计语言是计算机可以识别的语言,用于描述解决问题的方法,供计算机阅读和执行。 指令、程序和软件的关系 指令是计算机可以识别的命令。 程序是指令的集合。 软件包括了使计算机运行所需的各种程序及有关的文档资料。
作业:习题一 • 复习:数制转换、ASCII码 • 预习:第二章 C语言基本数据类型 小结 1. 简单的C程序设计; 2. 掌握VC集成开发环境的基本操作。