博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实验3-1 赋值操作符
阅读量:4144 次
发布时间:2019-05-25

本文共 1351 字,大约阅读时间需要 4 分钟。

 实验目的:

1.理解赋值操作符的作用

2.掌握如何判断一个C表达式是否合法。

3.体会每个C表达式都有一个值的含义。

实验步骤:

1.赋值操作符有何作用?

1.1分析程序并说明赋值操作符的作用。

#include<stdio.h>

int main()

{

       int a;

       a = 2;

       printf("%d\n", a);

}

1.2分析程序中赋值矛盾时的处理方法再次说明赋值操作符的作用。

#include<stdio.h>

int main()

{

       short i = -1;

       unsigned short ui, uj = 65535;

       long li, lj;

       unsigned uli, ulj;

       ui = i;

       li = i;

       lj = uj;

       uli = i;

       ulj = uj;

       printf("%hu\n", ui);

       printf("%ld,%ld\n", li, lj);

       printf("%lu, %lu\n", uli, ulj);      

}

分析:

1)程序中的赋值操作哪些矛盾,哪些不矛盾?

2)由赋值矛盾时的处理方法可知            

1.3通过程序中整型与浮点型之间赋值时的处理方法再次说明赋值操作符的作用。

#include<stdio.h>

int main()

{

       short i;

       float fa = 3.2;

       i = fa;

       printf("%hd, %f\n", i, fa);

       i = -3;

       fa = i;

       printf("%hd, %f\n", i, fa);   

}

思考:

1)用short型变量给单精度浮点型变量赋值时会出现误差吗?(提示:浮点型变量什么情况下会出现误差?short型变量要考虑有符号和无符号两种情况。)

2)浮点型变量可以用"%d"输出吗?

2.把下面的程序与1.1中的程序进行分析比较。

#include<stdio.h>

int main()

{

       int a;

       printf("%d\n", a = 2);

}

分析:

1)两程序的输出相同吗?它们分别是什么的值?

2)如何理解语句printf("%d\n", a = 2);。

3.编程验证

3.1如有int型变量a,b,c,如何分析表达式a=b=c=23?

3.2如有int型变量a,如何分析表达式(a=23)=23?

3.3如有int型变量a,表达式a+=a-=a*=a/2合法吗?如合法,则当变量a的值为23、-21时表达式的值是多少?

4.把下面的程序与1.1、2中的程序进行分析比较。

#include<stdio.h>

int main()

{

       int a;

       printf("%d\n", printf("%d\n", a = 2));

}

分析:

1)程序的输出结果为:

2)如何理解语句printf("%d\n", printf("%d\n", a = 2));?

5.分析下面程序的输出。

#include<stdio.h>

int main()

{

       char ca = 'A', cb = 'B';

       printf("%c,%c\n", ca, cb);

       ca = cb;

       cb = ca;

       printf("%c,%c\n", ca, cb);

}

转载地址:http://obdti.baihongyu.com/

你可能感兴趣的文章
6个强大的AngularJS扩展应用
查看>>
网站用户登录系统设计——jsGen实现版
查看>>
第三方SDK:讯飞语音听写
查看>>
第三方SDK:JPush SDK Eclipse
查看>>
第三方开源库:imageLoader的使用
查看>>
自定义控件:飞入飞出的效果
查看>>
自定义控件:动态获取控件的高
查看>>
第三方开源库:nineoldandroid:ValueAnimator 动态设置textview的高
查看>>
第三方SDK:百度地图SDK的使用
查看>>
Android studio_迁移Eclipse项目到Android studio
查看>>
JavaScript setTimeout() clearTimeout() 方法
查看>>
CSS border 属性及用border画各种图形
查看>>
转载知乎-前端汇总资源
查看>>
JavaScript substr() 方法
查看>>
JavaScript slice() 方法
查看>>
JavaScript substring() 方法
查看>>
HTML 5 新的表单元素 datalist keygen output
查看>>
(转载)正确理解cookie和session机制原理
查看>>
jQuery ajax - ajax() 方法
查看>>
将有序数组转换为平衡二叉搜索树
查看>>