第2章 简单C程序设计(甘玲)

合集下载

C语言全国计算机二级等级考试教程第一二章(章节带习题)

C语言全国计算机二级等级考试教程第一二章(章节带习题)
10
2.2 标识符、常量和变量
2.2.3 符号常量
在C语言中,可以用一个符号名来代表一个常量,称为符号常
量。但是这个符号名必须在程序中用(#define)进行特别的“
指定"。 例2.2 计算圆面积和周长,此程序中将如何教大家使用符号常量。
#include “stdio.h” /*包含头文件*/
#define PI 3.14159 /*定义符号常量,符号常量名为PI,用PI来代表3.14159*/
main()
/*主函数,程序的入口*/
{double r,s,l;
/*声明部分,定义了3实型个变量*/
r
r=5.0;
/*给变量r赋值*/
函 s=PI*r*r;
数 体
l=2*PI*r;
/*计算圆的面积*/ /*计算圆的周长*/
s
printf(“s=%f,l=%f\n”,s,l/)*;分别圆的面积和周长*/
/*给变量b赋值*/
数 体
area=a*b;
/*将a*b的结果赋值给变量area*/
printf(“a=%f,b=%f,area=%f\n”,a,b,area/)*;分别输出矩形的两条边长和面积*/
1.2
}
3.6
a=1.200000,b=3.600000,area=4.320000
4.32
注意:
1. C程序由函数组成,一个程序必须有一个且只能有一个主函数(main),C程
a
b
1.5000002.500000 2.5000003.500000
a b
内存空间
2.在程序中,声明变量就是在计算机内存中申请了某个内存单元。对变量 进行赋值,实质上就是把数据存入该变量所代表的存储单元中。

《C语言程序设计教程(第二版)》习题答案

《C语言程序设计教程(第二版)》习题答案

1 【C语言】《C语言程序设计教程(第二版)》习题答案说明1. 本文所指的《C语言程序设计教程(第二版)》是李凤霞主编、北京理工大学出版社出版的,绿皮。

2 第1章程序设计基础知识一、单项选择题(第23页)1-4.CBBC 5-8.DACA二、填空题(第24页)1.判断条件2.面向过程编程3.结构化4.程序5.面向对象的程序设计语言7.有穷性8.直到型循环9.算法10.可读性11.模块化12.对问题的分析和模块的划分三、应用题(第24页)2.源程序:main(){int i,j,k; /* i:公鸡数,j:母鸡数,k:小鸡数的1/3 */printf("cock hen chick\n");for(i=1;i<=20;i++)for(j=1;j<=33;j++)for(k=1;k<=33;k++)if (i+j+k*3==100&&i*5+j*3+k==100)printf(" %d %d %d\n",i,j,k*3);}执行结果:cock hen chick4 18 788 11 8112 4 843.现计算斐波那契数列的前20项。

递推法源程序:main(){long a,b;int i;a=b=1;for(i=1;i<=10;i++) /*要计算前30项,把10改为15。

*/{printf("%8ld%8ld",a,b);a=a+b;b=b+a;}}递归法源程序:main(){int i;for(i=0;i<=19;i++)printf("%8d",fib(i));}fib(int i){return(i<=1?1:fib(i-1)+fib(i-2));}执行结果:1 123 5 8 13 21 34 5589 144 233 377 610 987 1597 2584 4181 6765 4.源程序:#include "math.h";main(){double x,x0,deltax;x=1.5;do {x0=pow(x+1,1./3);deltax=fabs(x0-x);x=x0;}while(deltax>1e-12);printf("%.10f\n",x);}执行结果:1.32471795725.源程序略。

第2章_数据类型、运算符和表达式《C语言程序设计(第三版)》-电子教案

第2章_数据类型、运算符和表达式《C语言程序设计(第三版)》-电子教案

2.2 标识符、常量与变量

符号常量
【例2-1】输入圆的半径,计算周长和面积。 #define PI 3.14159 void main() { float r,c,s; scanf("%f",&r); c=2*PI*r; s=PI*r*r; printf("r=%f,c=%f,s=%f\n",r,c,s); }

以下是合法的整型常量:

2.2 标识符、常量与变量

实型常量

实型常量只能用十进制形式表示 表示形式:


小数形式。由数字序列和小数点组成,如 3.1415926、-0.15、.15、2.等都是合法的实型 常量。 指数形式。由十进制数加上阶码标志“e”或 “E”及阶码组成,如3.14e-4或3.14E-4表示 3.14×10-4。
2.2 标识符、常量与变量

2.2.3 变量


在程序运行过程中,其存储的值可以被改变的量称 为变量 变量必须通过标识符进行说明,称为变量名。 变量名和内存单元地址存在映射关系,程序可以通 过变量名寻址,从而访问其存储的数据。
2.2 标识符、常量与变量

变量的定义和说明

数据类型 变量名1[,变量名2,…,变量名n];
long型转换成float型时由原来可达10位整数变成只有7位有效数字精度丢失但由于数的范围扩大了数据类型从较低级提升到较高级随着竞争日益激烈酒店嘴中的肥肉被大肆抢夺各大酒店在这场竞争中几乎溃不成军
21世纪高等学校精品规划教材
第2章 数据类型、运算符 和表达式



掌握C语言的基本数据类型 掌握标识符、关键字、常量和变量的使用 掌握运算符、表达式以及数据类型之间的转换 等 掌握简单数据的输入输出

c语言与程序设计-第2章课后习题参考答案

c语言与程序设计-第2章课后习题参考答案

2.1 下列哪些是词法记号?关键字(是)注释空白符八进制常量(是)三字符序列字符串常量(是)括号(是)2.2 C编译器可将下列每一个源字符串分解为哪些记号?(不必考虑记号组合是否合法)(1)x+++y x, ++, +, y(2)-0xabL -, 0xabL(3) 2.89E+12L 2.89E+12L(4)"String+\"FOO\"" " String+ \"FOO\""(5)x**2 x, *, *, 2(6)"X??/" "X??/"(7)a?b a, ?, b(8)x--+=y x, --, +=, y(9)intx=+10 intx, =, +, 10(10)"String""FOO" "String", "FOO"(这道题当时改的时候有几个小题改得有错误,注意!)2.3 下列哪些不是标识符,为什么?标识符由字母、数字和下划线组成,但首字符必须是字母或下划线。

4th 不是,以数字开头;sizeof 不是(标准C的关键字)_limit 是_is2 是xYshould 是x*y 不是,* 非法o_no_o_no 是temp-2 不是,- 非法isn't 不是,' 非法enum 不是(标准C的关键字。

注:关键字也称为保留字,是被系统赋予特定含义并有专门用途的标识符。

关键字不能作为普通标识符,但可以作为宏名。

所有预处理均发生在识别这些关键字之前。

)2.4 在下列表示中,哪些是合法常数,哪些是非法常数?对于合法常数,指出其类型;对于非法常数,说明其错误原因。

2L 合法,long长整型''' 不合法,单引号组中的单引号前需要转义字符.12 合法,double双精度浮点型0x1ag 不合法,g不是16进制数中的符号,也不表示任何类型33333 合法,int整形"a" 合法,字符串常量"" 合法,字符串常量0.L 合法,long double长双精度浮点型E20 不合法,缺少尾数部分0377UL 合法,unsigned long无符号长整型'\18' 不合法,存在非8进制位'\0xa' 不合法,不符合十六进制字符码表示规则\xhh0x9cfU 合法,unsigned int无符号整形'\45' 合法,char字符型1.E-5 合法,double双精度浮点型'\0' 合法,char字符型3.F 合法,float浮点型"3'4"" 不合法,缺少转义符'"' 合法,char字符型(P35,双引号作为字符常量时既可用图形符号也可用转义序列表示)'\a' 合法,char字符型2.6 以下的变量声明语句中有什么错误?(1)int a; b = 5; 第一个分号改为逗号int a, b=5;(2)doubel h; 关键字错误double h;(3)int x = 2.3; 类型错误float x = 2.3;(4)const long y; 需要赋初值const long y = 0;(5)float a = 2.5*g; g未定义变量int g = 1; float a = 2.5*g;(6)int a = b = 2; b未定义变量int a = 2, b = 2;2.7 设变量说明为:int a = 1, b = 2, c = 3, d;double x = 2.0; y = 7.7;请给出下列表达式的值。

《C语言程序设计》(软件技术11级)(第2章)

《C语言程序设计》(软件技术11级)(第2章)

2.1基本字符、标识符和关键字

2.1.3 关键字(保留字) 为系统预定义的标识符,在C语言中有特殊的 含义
void int return float double char long short unsigned if else switch case default break
do while continue for
2.3数据的格式化输出和输入

输入输出函数库: stdio.h printf() scanf() getchar() putchar() gets() puts()




2.3数据的格式化输出和输入
2.3.1数据的格式化输出
学一学
printf( 格式控制,【输出列表】) ;
格式控制是用双引号括起来的字符串,分两种情况: 1.字符串只含有普通字符或转义字符,则不包含输出 列表。(练一练:\*‟\n‟为转义字符,表示换行*\)
结构类型 联合类型 枚举类型
struct union enum
空类型(无值类型) void
2.2数据类型及常数、变量




1.不同类型的数据在内存中占据不同长度的存 储区(字节),且采用不同的表示方式。 2.一种数据类型对应着一个取值的范围 3.一种数据类型对应着一组允许的操作 4.构造类型数据是由基本类型按照一定的规律 构造出来的。 5.C语言的数据又可分为常量和变量,他们都 分别属于上述类型中得一种。
iSum=iPrize1+iPrize2;
printf("该同学的奖学金为:%d\n",iSum);
return 0;
}
2.3数据的格式化输出和输入

C语言程序设计实训教程第2章 基础实验

C语言程序设计实训教程第2章  基础实验

19
(2)编写程序求出任一输入字符的 ASCII码。 提示:从键盘输入一个字符赋给字符变量,以 整型格式输出该变量。 (3)编写程序,由键盘任意输入 3个 1位整数 (第一个整数不为 0),将它们按输入顺序组合为 一个 3位数输出,如输入 2,5,8,则输出为258。 提示:输入 a,b,c3个整数,组合整数为 d =a﹡100 +b﹡10 +c。
(3)写一个函数,用“冒泡法”对输入的 10 个数字由小到大顺序排列,并输出。 提示: ①排序的函数名为 Sort。 ②排序前后的输入输出都应在主函数中完成。 ③使用数组作为函数参数。 ④使用“冒泡法”排序。
67
(4)写一函数,使给定的一个二维数组(5 ×5)转置,即行列互换。 提示: ①使用 5 ×5的二维数组存放数据。 ②矩阵转置的函数名为 Turn。 ③转置前后的输入输出都应在主函数中完成。 ④使用数组作为函数参数。
20
2.3
数据的输入和输出
1)实验目的 ①熟悉顺序结构的程序设计方法。 ②熟练使用 C 的赋值语句和各种表达式。 ③熟练掌握各种数据的输入、输出方法,能正 确使用各种格式转换符。
21
2)实验内容 程序验证性实验
22
23
24
25
程序填空性实验 程序功能:可以计算两个整数的商和余数。
26
程序设计性实验 (1)编写程序由键盘输入任意一个数字字符 (0 ~ 9),将其转换为数字输出。 提示:将该字符和“0”字符相减(字符的 ASCII码值相减)即得到数字。 (2)输入三角形三边长 a,b,c,求三角形 周长 l和面积 s。用 scanf()函数输入数据,printf ()函数输出计算结果,输出时要求有文字说明。
2)实验内容 程序验证性实验

C语言程序设计教程(电子教案)

C语言程序设计教程(电子教案)
实用文档
学习目标
对C语言有一个概括的了解, 能够编写包含键盘输入、计算和 显示输出等操作的简单C程序。
4
主要内容
• C语言的产生与特点 • 简单C程序的组成 • C语言应用程序开发的基本步骤
5
1.1 C语言的产生及特点
C语言是为了编写系统程序而在1968年开始 研发的计算机高级语言
C语言表达能力强,使用灵活,程序结构清 晰,紧凑,可移植性好
指针 类型
17
基本数据类型说明符
整型:int long
字符型:char 实型:float
double long double
18
2.2 常 量
常量∶在程序运行过程中,其值不能被改 变的量。
一. 不同数制整型常量的表示
例如: 12 :十进制数 12
012 :八进制数 12(等于十进 制数10,用前导符0表示八进制数常量)
计算x+y+z,并将结 8果赋给变量sum
显示变量 sum的值
主函数 main()
一般C程序的组成
【例1-2】采用模块结构,改写例1-1的程序。 add(int x,int y,int z )
{ return(x+y+z);
}
函数add()
调用函数 add()
main() { int x,y,z; printf("Please Input Three Integers:\n "); scanf("%d,%d,%d ",&x,&y,&z);
4. 用‘\’ ’表示字符’ ,‘\”’表示字符”, ‘\\ ’表示字符\ 。
5. 用双引号括起来的字符序列表示字符串常量,其 中最后一个字符是字符串结束符‘\0’,不显式 地表示出来。如:“English” 。

第2章 简单程序设计(C++版)

第2章  简单程序设计(C++版)
本文档介绍了C++语言的基础编程知识,包括赋值语句的使用、运算符和表达式的概念、常量和变量的定义、标准数据类型以及数据输入输出的方法。通过顺序结构的实例,展示了程序执行的基本流程。文档还通过三个具体例子,详细解释了如何交换两个变量的值、如何计算圆柱体的表面积,以及如何应用编程思维解决经典的鸡兔同笼问题。这些例子不仅展示了C++语言的基基本方法。然而,本文档并未提供C语言程序设计上海交通大学出版社第5章习题5的具体答案。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

问题?
前面反复提到标识符、关键字,什么是关键字、 标识符呢?
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
13
涉及到的语法知识-标识符与关键字
标识符 标识符是变量,函数,标号等的名字或标记 两类:
• 系统定义的标识符,例如:printf、scanf、main等 • 用户自己定义的,自己定义标识符时要考虑如下问题: – 只能用字母、 数字和下划线,并且第一个字母只能是字 母或下划线;
《解析C程序设计(第2版)》第2章 简单C程序设计
4
第一个C程序的组成
预处理 主函数main 注释
#include <stdio.h> main() /*主函数*/ { printf("hello,world!\n"); }
C程序由函数组成: 主函数 库函数 自定义函数
2013-8-10 《解析C程序设计(第2版)》第2章 简单C程序设计 5
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
23
输入半径-分析
计算机如何区分半径,周长,面积? 为不同的数据定义不同的变量名,例如: r,circumference,area. 计算机上处理的数据有几种类型?这些数据又 是什么类型? 三种:整数类型(int)、实数类型(float和 double)、字符类型(char),不同类型的数据 其编码方式和所占空间不同。 半径等数据都是实数类型
主函数组成
main() { …;
函数头
函数体
}
C语句
2013-8-10 《解析C程序设计(第2版)》第2章 简单C程序设计 6
程序说明
#include <stdio.h>告诉编译器在本程序中包含标准输 入/输出库的信息。printf函数在stdio.h中声明。 main表示C语言的一个特殊函数,称之为主函数。每个C 程序都必须有一个且只能有一个主函数,整个程序从主函数 开始执行,最后结束于主函数。main()表示主函数的函数 头。 “{}”中的内容是函数体。主函数中的所有操作(或语句) 都在这一对“{}”之间。本程序的主函数中只有一条函数调 用语句。 “/* …… */”表示注释,不执行。
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
7
问题?
第一个程序显示的是字符序列,能不能显示数字 数据呢? C程序还可以包括哪些内容呢?
下面仿照第一个C程序来编写其他程序。
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
8
课堂练习
仿照C语言第一个程序,编写C程序在屏幕上直 接输出圆的周长和面积。 编写程序输出如下形状的图形:
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
17
标识符
标识符的命名必须遵守以下原则: (1)不能是C语言中的关键字,如int,do,for等等。 (2)只能由字母,数字,和下划线三种字符组成,且第一 个字符必须是字母或下划线。 (3)不要太长。旧的ANSI C规定前6个字符有效;在 IBM-PC的MSC系统中取8个字符;Turbo C则允许32 个字符。 (4)见名知义。区分大小写。
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
24
输入半径-分析
用什么语句实现输入? 用赋值语句或scanf() 输入的数据存放在哪? 内存 系统根据变量的数据类型自动为其分配空间, 并将内存地址与变量名进行关联。我们根据变 量名使用变量,系统根据其对应的内存地址对 数据进行读写。
• 不能与关键字(系统保留的特殊词汇)相同;
– 区分大小写,即R和r是两个不同变量。 – 为便于阅读和理解,对象的取名尽可能直观,最好不要用 系统定义的标识符。
关键字 我们已经学的有:short long int float double char void
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
10
问题实现方法1-直接输出圆面积和周长
#include <stdio.h> /* LI2_1.C */ #include <stdio.h> int main( ) { printf("circumference = %f\n", 2 * 3.14159 * 5.3); /* 输出周长 */ printf("area = %f\n", 3.14159 * 5.3 * 5.3); /* 输出面积 */ return 0; }
2013-8-10 《解析C程序设计(第2版)》第2章 简单C程序设计 20
进一步思考?
如果需要计算多个圆的周长和面积,该怎么修改 程序? 例2-2计算两个圆的周长和面积,要求将给定半 径存储起来,并将计算结果输出到屏幕。 利用冯氏计算机存储程序的特点,可将半径用变 量存储起来、多次使用,还可改变其值,即可解 决计算多个的问题。
首先分析第一个C程序
#include <stdio.h> /*预处理命令*/ main() /*主函数*/ { printf("hello,world!\n"); /*库函数,输出字符序列*/ }
问题:
(1)这个程序包括哪些组成部分? (2)这里显示的是字符序列,能不能显示数字数据呢?
2013-8-10
如:
/*LI2_1.c*/ #include <stdio.h> void main() { printf("area = %f\n", 3.14159 * 5.3 * 5.3); /* 输出面积 */ printf("circumference = %f\n",2 * 3.14159 * 5.3);/* 输出周长 */ }
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
11
C程序的基本组成
主函数main 标识符、关键字、注释 基本数据类型 常量与变量 基本表达式 C语句 格式化输入输出 预处理命令
下面围绕问题,分别介绍上述语法知识。
2013-8-10 《解析C程序设计(第2版)》第2章 简单C程序设计 12
2013-8-10 《解析C程序设计(第2版)》第2章 简单C程序设计 22
问题实现方法2-用变量存储半径再计算
#include <stdio.h> void main() { float r=5.3; printf("circumference = %f\n", 2 * 3.14159 * r); /* 输出周长 */ printf("area = %f\n", 3.14159 * r * r); /* 输出面积 */ }
另外,Turbo C2.0扩展关键字有: asm,_cs,_ds,_es,_ss,cdecl,far, near,huge,interrupt,pascal
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
16
标识符
标识符分为: 系统预定义标识符(如 main、printf 等) 用户自定义标识符(如Add、r、x, y, sum等) 在程序中使用的常量、变量、语句标号以及函数的名 称等统称为标识符(Identifier) 除库函数的函数名、头文件名和预处理命令由系统定 义外,其余都由用户自定义
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
25
方法2是用赋值语句实现的半径存储: float r; r=5.3;
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
26
问题实现方法3—计算多个圆面积和周长
#include <stdio.h> int main() { float r; r=5.3; printf("circumference = %f\n", 2 * 3.14159 * r); /* 输出周长 */ printf("area = %f\n", 3.14159 * r * r); /* 输出面积 */ r=7.5; printf(“circumference = %f\n”, 2 * 3.14159 * r); /* 输出周长 *;, 3.14159 * r * r); /* 输出面积 */ return 0; }
********** * * * * **********
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
9
问题的提出及分析
例2-1仿照C语言第一个程序,编写C程序在屏幕 上直接输出圆的周长和面积。
分析:
要计算圆面积和周长,务必知道圆半径,怎样才 能获得呢? 另外,要输出面积和周长(数值数据),该怎么 办呢?
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
21
问题的分析
甲:请给我计算一下圆的周长和面积。 乙:请问半径是多少? 甲:5.3。 乙:圆的周长=2*π*5.3=33.3 圆的面积=π*5.3*5.3=88.25 算法? 开始 1.输入半径 2.计算周长和面积 3.输出计算结果 结束
2013-8-10
《解析C程序设计(第2版)》第2章 简单C程序设计
18
标识符举例
合法的标识符 smart _decision key_board FLOAT Year2008 不正确的标识符 5smart bomb? key.board float a%
相关文档
最新文档