资源描述:
《实验三 数据的输入输出》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验三数据的输入输出一、实验目的1.进一步熟悉VC环境的使用方法和C程序的编辑、编译、连接和运行的过程。2.学习C语言基本的输入、输出语句,以及如何进行格式的控制。掌握常用的C语言语句,熟练应用赋值、输入、输出语句。3.编写顺序结构程序并运行,了解如何去完成一个简单的C程序。二、实验内容题目1阅读程序加注释,并给出运行结果(1)已知三角形边长求面积。请给出运行结果,并对每条程序加以注释。#include#include//头文件math.h中含函数sqrt()的定义v
2、oidmain(){doublea,b,c,s,area;a=3;b=4;c=5;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));//函数sqrt()用于求一个数的平方printf("%4.1f,%4.1f,%4.1f,areais%4.2f",a,b,c,area);}运行结果:(2)键入以下代码,观察输出结果。#includevoidmain(){printf("Thisprintsacharacter,%canumber,%da
3、float,%f",'z',123,456.789);}(提示:printf()函数占了两行,在第一行末尾使用了一个反斜杠()指出字符串将延续到下一行,因此编译器将把这两行代码视为一行)运行结果:(3)运行结果,并对每条程序加以注释。#include#includemain(){floata,b,c,disc,x1,x2,p,q;scanf("a=%f,b=%f,c=%f",&a,&b,&c);disc=b*b-4*a*c;p=-b/(2*a);q=sqrt(
4、disc)/(2*a);x1=p+q;x2=p-q;printf("x1=%5.2fx2=%5.2f",x1,x2);}输入:a=1,b=3,c=2运行结果:(4)观察以下代码的运行结果是否会显示在同一行?#includevoidmain(){printf(“hello,”);printf(“world”);}运行结果:(5)学习使用按位与&运算。程序分析:0&0=0;0&1=0;1&0=0;1&1=1#includevoidmain(){inta,
5、b;a=077;b=a&3;printf("40:Thea&b(decimal)is%d",b);b&=7;printf("40:Thea&b(decimal)is%d",b);}运行结果:题目2体验数据格式输入、输出的效果分析以下程序,假设依据给定的内容输入,其输出会怎样?实际运行并按照要求输入,比较其输出结果与分析的结果是否一致。(1)十、八、十六进制数的输入与输出#include"stdio.h"voidmain(){inta,b,c,d;scanf("%d,%x,%o,%c",&a
6、,&b,&c,&d);printf("a=%d,b=%d,c=%d,d=%c",a,b,c,d);}输入:10,10,10,10¿输出:输入:10101010¿输出:正确否?为什么?(2)控制字符与修饰符使用1#include"stdio.h"voidmain(){inta,d;floatb;charc;scanf("%2d%*2d%2f%2c%d",&a,&b,&c,&d);printf("a=%d,b=%f,c=%c,d=%d",a,b,c,d);}输入:12345678900¿输出:输入
7、:123456789m0¿输出:输入:12345678900输出:输入:1,23,456,7890输出:正确否?为什么?输入:使用回车键输入,下列哪一组正确?为什么?12↙12↙34↙34↙56↙5678900↙78900↙(3)格式字符与修饰符使用2#includevoidmain(){inta=1234;floatf=123.456;charc[]="Hello,world!";printf("%8d,%-8d",a,a);printf("%10.2f,%-10.1f",
8、f,f);printf("%10.5s,%-10.3s",c,c);printf("%08d",a);printf("%010.2f",f);printf("%0+8d",a);printf("%0+10.2f",f);}(4)getchar与putchar的使用#includevoidmain(){charc1,c2;/*思考:此处能否为int型*/c1=getchar();c2=getchar();putchar