实验三 运行符与表达式.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验三 运行符与表达式

实验四 运行符与表达式 一、目的和要求 1、理解常用运行符的意义。 2、掌握C语言表达式的运行规则。 二、实验内容和步骤 1、编写一个C语言程序,测试下列各表达式 i , j i + 1, j + 1 i + + , j + + + + i, + + j i +++j , i + + + + + j + + i + + + + + j + + (提示:通过下例即可测试“i+++j”的计算过程。 #include stdio.h main() { int i=1,j=1; printf(i+++j = %d\n, i+++j); printf(i=%d,i); printf(j=%d,j); } ) 要求在各表达式中i和j都分别有相同的初值。在实验中注意下列问题: (1)哪些表达式是错误的?为什么? (2)认真分析并理解+,++,++i,i++的意义和优先级别。 2、通过下例分析总结运算符的优先级。 可能有如下程序: #include stdio.h void main(void) { int i, j; i = 1; j = 101; printf(i = %d, and j = %d\n, i, j); printf(i++ = %d, and j++ = %d\n, i++, j++); printf(++i = %d, and ++j = %d\n, ++i, ++j); printf(i+1 = %d, and j+1 = %d\n, i+1, j+1); printf(i+++j = %d\n, i+++j); printf(++i+++j++= %d\n, (++i)+++(j++)); printf(i = %d, and j = %d\n, i, j); //注意i,j的值,分析i+++j的执行过程。 printf(i-- = %d, and j-- = %d\n, i--, j--); printf(--i = %d, and --j = %d\n, --i, --j); printf(i-1 = %d, and j-1 = %d\n, i-1, j-1); printf(i---j = %d\n, i---j); printf(--i---j--= %d\n, (--i)---(j--)); } 3、输入并运行下面的程序 #include stdio.h main() { int a,b; unsigned c,d; long e,f; a=100; b=-100; e=50000; f=32767; c=a;d=b; printf(%d%d\n,a,b); printf(%u%u\n,a,b); printf(%u%u\n,c,d); c=a=e; d=b=f; printf(%d%d\n,a,b); printf(%u%u\n,c,d); } 请对照程序和运行结果分析: 将一个负整数赋给一个无符号的变量,会得到什么结果。 将一个长整数赋予无符号变量,会得到什么结果(分别考虑大于或等于65535以及小于65535的情况)。 将一个大于32767的长整数赋给整型变量,会得到什么结果。 4、编写程序: 输入一个四位正整数,将它们倒排, 例如输入1234,输出4321。 (提示:分别应用/ 求整数部分, %求余数部分。例如7/5=1,7%5=2) 5、输入下面程序: #includestdio.h void main( ) { int i,j,m,n ; i=8 ; j=10 ; m=++i ; n=j++; printf(%d,%d,%d,%d,i,j,m,n); } (1)运行程序,注意 i,j,m,n各变量的值,分别作以下改动并运行。 (2)将第3 行中 m, n 的值改为:m=i++; n=++j; 再运行。 (3)将程序改为: #include stdio.h void main( ) { int i, j; i=8; j=10; printf(“ %d,%d” , i++, j++); } 运行并分析结果。 (4)在(3)的基础上,将 printf语句改为: printf(“ %d,%d” , ++i, ++j); 运行并分析结果。 (5)再将printf 语句改为: printf(“ %d,%d,%d,%d” , i, j, i++, j++); 运行并分析结果。 (6)将程序改为: #include stdio.h void main( ) { int i,j,m=0,n=0 ; j=10 ; i=8 ; m+=i++; n-=--j

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档