Presentation is loading. Please wait.

Presentation is loading. Please wait.

C程序设计 实验二 数据类型、运算符和表达式 第6讲 2007.10.19.

Similar presentations


Presentation on theme: "C程序设计 实验二 数据类型、运算符和表达式 第6讲 2007.10.19."— Presentation transcript:

1 C程序设计 实验二 数据类型、运算符和表达式 第6讲

2 不同类型数据之间赋值、运算符的应用和表达式输出。
知识点 不同类型数据之间赋值、运算符的应用和表达式输出。

3 教学重点与难点 重点: 不同类型数据之间赋值;各种算术运 算符,特别是自加自减运算符。 难点:自加自减运算符;复合赋值运算。

4 实验目的及要求 1、掌握C语言的各种类型及其定义方法,赋值方法。 2、掌握不同类型数据之间赋值的规律。 熟悉文件系统控件及其应用。
3、学会使用各种算术运算符,特别是自加自减运算符。 4、进一步熟悉C程序的编辑、编译、连接和运行的过程。 熟悉文件系统控件及其应用。

5 教学过程 ● 讲解实验目的及布置实验任务 ● 检查、指导与解答问题 ● 实验小结 ● 布置预习

6 实验内容及实验步骤 main() { char c1,c2; c1=’a’; c2=’b’; printf(“%c%c\n”,c1,c2);
题目1 输入并运行下面的程序。 main() { char c1,c2; c1=’a’; c2=’b’; printf(“%c%c\n”,c1,c2); }

7 ① 运行此程序 ② 在此基础上增加一个语句 printf(“%d %d\n”,c1,c2); 再运行,并分析结果。

8 ③ 将第2行改为: int c1,c2; 再运行,并观察其结果。 ④ 将第3、4行改为: c1=a; c2=b; 再运行,并分析结果。 ⑤ 在将3、4行改为: c1=”a”; c2=”b”;

9 题目2 输入并运行习题3.6给出的程序。 ⑥ 在将3、4行改为: c1=300; /* 用大于255的整数 */ c2=400;
再运行,并分析结果。 题目2 输入并运行习题3.6给出的程序。 main( ) { char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’\116’; printf("a%cb%c\tc%c\tabc\n",c1,c2,c3); printf("\t\b%c%c",c4,c5); }

10 题目3 练习一个有关字符和整型的程序。 main() { char c1,c2; c1=97; c2=98;
题目3 练习一个有关字符和整型的程序。 main() { char c1,c2; c1=97; c2=98; printf("%c %c\n",c1,c2); /*以字符形式输出*/ printf("%d %d\n",c1,c2); /*转换为整数形式输出*/ 思考:可否改成 int c1,c2;?

11 题目4 输入并运行下面的程序。 main ( ) { int i,j,m,n; i=8; j=10; m=++i; n=j++; printf("%d,%d,%d,%d",i,j,m,n); }

12 思考: main ( ) { int i,j; i=8; j=10; printf(“%d,%d ”,i++,j++);
① m=++i;与m=i++;的不同之处? ② 若将4、5行该为: m=i++; n=++j; 再运行。 ③若将程序改为: main ( ) { int i,j; i=8; j=10; printf(“%d,%d ”,i++,j++); printf(“%d,%d ”,i,j); }

13 题目5 输入并运行下面的程序。 main( ) { int a=9; a+=a-=a+a;  /*包含复合的赋值运算符的赋值表达式*/ printf("%d\n",a); } 思考:赋值表达式a+=a-=a+a的求解步骤?

14 思考:若将printf函数中%d变为%f,可否输出分式的值?
题目6 输入并运行下面的程序。 main( ) { int a=7,b=5; printf("%d\n",b=b/a);     /*输出赋值表达式的值*/ } 思考:若将printf函数中%d变为%f,可否输出分式的值?

15 题目7 输入并运行下面的程序。 main( ) { int a=011;         /*八进制整常量赋给a*/ printf(“%d\n”,++a);  /*先自加,再使用a值*/ } 分析结果:

16 题目8 若int类型数据占两个字节,分析输出结果.
main( ) { int k=-1; printf("%d,%u\n",k,k); } 思考:-1在内存中的存储形式?

17 题目9 输入并运行下面的程序。 #include<stdio.h> main( ) { printf("%d",null); } 运行情况: 因为变量null无定义,无法正确运行。 思考:如将null改为NULL,则结果如何?

18 题目10 若k,g均为int型变量,则分析结果。
main( ) { int k,g; k=017;         /*此处为八进制常量*/ g=111;         /*此处为十进制常量*/ printf("%d\t",++k);   /*以十进制输出表达式++k的值*/ printf("%x\n",g++);   /*以十六进制输出表达式g++的值*/ } 运行结果为: f

19 实验思考及讨论 i++和 ++i的区别      i--和 --i的区别

20 预习内容: 第四章 顺序结构程序设计


Download ppt "C程序设计 实验二 数据类型、运算符和表达式 第6讲 2007.10.19."

Similar presentations


Ads by Google