资源描述:
《c语言实验报告材料(2)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用C语言实验报告说明1,所有程序均用VC6.0编译运行,文件名命名为姓名+日期,因为实验存在补做,所以并不是按照日期先后排列的。2,为了使截图清晰,手动将运行窗口由“黑底白字”改为了“白底黑字”。实验2数据类型、运算符和表达式一、实验目的: (1)掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法。 (2)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。 (3)掌握C语言的输入和输出函数的使用 (4)进一步熟悉C程序的编辑、编译、连接和运行的过程。文档实用三、程序调试与问题
2、解决:(1)输人并运行下面的程序 #include void main() { char c1,c2; c1='a'; c2='b'; printf("%c %c",c1,c2); }运行此程序。在上面printf语句的下面再增加一个printf语句。printf("%d %d",c1,c2); 再运行,并分析结果。输出结果如图,编译成功,无错误。文档实用将第3行改为int c1,c2; 再运行,并分析结果。再将第4、5行改为c1=a; c2=b; 再运行,并分析结果。a,b没有定义,编译报错。再将第4、5行改为c1=‘’a‘’;
3、 c2=‘’b‘’; 再运行,并分析结果。再将第4、5行改为c1=300; 文档实用c2=400; 再运行,并分析结果。以字符型输出时,输出的将是300,400对应的字符。(2)输人并运行教材第3章习题3. 6给出的程序 #include main () { char c1='a',c2='b',c3='c',c4='101',c5='116'; printf("a%c b%ctc%ctabc",c1,c2,c3); printf("tb%c %c",c4,c5); }#include void mai
4、n() { 文档实用int a,b; unsigned c,d; long e,f;a=100; b=-100; e=50000; f=32767; c=a; d=b; printf("%d,%d",a,b); printf("%u,%u",a,b); printf("%u,%u",c,d); c=a=e; d=b=f; printf("%d,%d",a,b); printf("%u,%u",c,d); }请对照程序和运行结果分析: ①将一个负整数斌给一个无符号的变t,会得到什么结果。画出它们在内存中的表 示形
5、式。文档实用②将一个大于32767的长整数斌给整型变t,会得到什么结果。画出它们在内存中 的表示形式。③将一个长整数赋给无符号变量,会得到什么结果(分别考虑该长整数的值大于或等于65535以及小于65535的情况)。画出它们在内存中的表示形式。得到的是原来正数取存的数将一个大于32767的长整数斌给整型变t,造成溢出,数据丢失。可能会溢出,也可能正常。(4)输人习题3. 10 #include void main() { int i,j,m,n; 文档实用i=8; j=10; m=++i; n=j++; printf("%d,%d,%d,%
6、d",i,j,m,n); }①运行程序,注意i,j,m,n各变量的值。分别作以下改动并运行: ②将第6,7行改为: m=i++; n=++j; 再运行。③将程序改为: #include void main() { int i,j; i=8; j=10; printf("%d,%d",i++,j++); }文档实用④在③的基础上,将printf语句改为: printf("%d,%d,%d,%d",i,j,++i,++j); ⑤再将printf语句改为: printf("%d,%d,%d,%d",i,j,i++,j++); ⑥将
7、程序改为: #include void main() { int i,j,m=0,n=0; i=8; j=10; m+=i++; n-=--j; printf("i=%d,j=%d,m=%d,n=%d",i,j,m,n); }②将第6,7行改为: m=i++; n=++j; 再运行。文档实用以上程序结果的不同均是由于自增自减运算符引起的,考虑到一个判断技巧,看自增自减运算符时,先将它们从原程序中拿出来,如果++或—在后,就先把值放回去,然后自增自减,如果在前,先自增自减,再把结果放进去。 printf("%d,%d,%d,%d",i
8、,j,++i,++j); #include