如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
练习2数值类型及其运算参考答案一、目的掌握整型、浮点型变量的定义与使用。掌握常用数学函数的调用方法。掌握格式化输入输出函数的基本使用方法。掌握算术运算的表达和求值方法。学习实现简单算术运算的顺序程序设计方法。二、实验程序填空:C2_1c.C调用数学函数计算x=lg100、y=|-5.6|、z=。请在每对/**/之间调用函数,运行并查看结果。注:运行结果为x=2.000000y=5.600000c=2.000000#include<stdio.h>#include<math.h>voidmain(){doublex,y,z;x=/**/log10(100.0)/**/;y=/**/fabs(-5.6)/**/;z=/**/sqrt(4.0)/**/;printf("x=%fy=%fc=%f\n",x,y,z);}程序改错:C2_2m.C的功能是求半圆的周长和面积。程序中一对/**/之间存在两个错误,请修改、运行并查看结果。#include<stdio.h>#definePI3.141593voidmain(){floatr=1,c,s;/**/c=PI*r;/*PI和r之间必须有乘法运算符“*”*/s=1.0/2*PI*r*r;/*1/2的结果为0,而不是0.5或者:s=1/2.0*PI*r*r;或者:s=1.0/2.0*PI*r*r;或者:s=PI*r*r/2;*//**/printf("c=%fs=%f\n",c,s);}程序改错:C2_3m.C的功能是求两个整数的商并保留两位小数输出。程序中一对/**/之间存在两个错误,请修改、运行并查看结果。(注意:a、b、c的类型不得改变)注:正确的运行结果应是c=3.33#include<stdio.h>voidmain(){inta,b;/**/floatc;/*变量的定义要放在所有执行语句之前,不能插在执行语句中*/a=10;b=3;c=a*1.0/b;/*或c=(float)a/b;,或c=a/(float)b;以避免整型除整型丢失数据*//**/printf("c=%.2f\n",c);}程序填空:C2_4c.C实现《指导》P35实验3.2-3(求4个成绩a、b、c、d的总分sum和平均分aver,其中成绩允许带一位小数,平均分输出时取小数点后两位数字)。请在一对/**/之间将程序补充完整。#include<stdio.h>voidmain(){floata,b,c,d,sum,aver;printf("Input4scores:");scanf("%f%f%f%f",&a,&b,&c,&d);/**/sum=a+b+c+d;aver=sum/4.0;printf("sum=%.1f,aver=%.2f",sum,aver);/**/}编写程序C2_5.C:输入一个三位数,计算并输出其各位数字之和。如输入127,输出10。#include<stdio.h>voidmain(){intm,m0,m1,m2,sum;printf("Inputanumber(100~999):");scanf("%d",&m);m0=m%10;m1=(m/10)%10;m2=m/100;sum=m0+m1+m2;printf("sum=%d\n",sum);}改写上题程序,另存为C2_6.C:输入一个三位数,将其按逆序转换为新的数后输出。如输入127,输出721。#include<stdio.h>voidmain(){intm,m0,m1,m2,mnew;printf("Inputanumber(100~999):");scanf("%d",&m);m0=m%10;m1=(m/10)%10;m2=m/100;mnew=m0*100+m1*10+m2;printf("newm=%d\n",mnew);}运行程序C2_7m.C,观察结果。现欲将x、y两数交换存放,请修改程序实现之。#include<stdio.h>#include<conio.h>voidmain(){intx=3,y=5;x=y;y=x;printf("x=%dy=%d\n",x,y);getch();}运行结果是:x=5y=5以下程序实现x、y两数交换存放:#include<stdio.h>#include<conio.h>voidmain(){intx=3,y=5,t;t=x;x=y;y=t;printf("x=%dy=%d\n",x,y);getch();}三、编程选做编写程序C2_8.C:输入两个数,求它们的和,要