当前位置:首页 > C语言作业答案
第一章:
第6题
方法一:
#include
{int a,b,c,max;
printf(\ scanf(\ max=a; if (max
printf(\ return 0; }
方法二:
#include
{int max(int x,int y); int a,b,c,d;
printf(\ scanf(\ d=max(max(a,b),c);
printf(\ return 0; }
int max(int x,int y) { return (x>y)?x:y; }
第三章
第3题
#include
{float d=300000,p=6000,r=0.01,m; m=log10(p/(p-d*r))/log10(1+r); printf(\ return 0;
}
第4题
#include
int main() {char c1,c2; c1=97; c2=98;
printf(\ printf(\,c2=%d\\n\ return 0; }
(1) 运行时会输出什么信息?为什么? 解:运行时输出:
第1行是将c1,c2按%c的格式输出,97是字符a的ASCII代码,98是字符b的ASCII代码。 第2行是将c1,c2按%d的格式输出,所以输出两个十进制整数。 (2) 如果将程序第4,5行改为:
C1=197; C2=198;
运行时会输出什么信息?为什么?
解:由于Visual C++6.0字符型数据是作为signed char 类型处理的,它存字符的有效范围为0~127,超过此范围的处理方法,不同的系统得到的结果不同,因而用“%c”格式输出时,结果是不可预料的。
(3) 如果将程序第3行改为;
int c1,c2;
运行时会输出什么信息?为什么?
解:如果给c1和c2赋的值是97和平利用8,则输出结果与(1)相同。如果给c1和c2赋的值是197和198,则用%c输出时,是不可预料的字符。用%d输出时,输出整数197和198,因为它们在int类型的有效范围内。
第5题
#include
scanf(\ scanf(\
scanf(\
printf(\ return 0; }
输入方法1:a=3 b=7 8.5 71.82 Aa回车即可 输入方法2: a=3 b=7; 8.5 71.82Aa 输入方法3: a=3 b=7 8.5
71.82Aa
第7题
方法一
#include
{float h,r,l,s,sq,vq,vz; float pi=3.141526;
printf(\请输入圆半径r,圆柱高h∶\
scanf(\,&h); //要求输入圆半径r和圆柱高h l=2*pi*r; //计算圆周长l s=r*r*pi; //计算圆面积s
sq=4*pi*r*r; //计算圆球表面积sq vq=3.0/4.0*pi*r*r*r; //计算圆球体积vq vz=pi*r*r*h; //计算圆柱体积vz printf(\圆周长为: l=%6.2f\\n\ printf(\圆面积为: s=%6.2f\\n\ printf(\圆球表面积为: sq=%6.2f\\n\ printf(\圆球体积为: v=%6.2f\\n\ printf(\圆柱体积为: vz=%6.2f\\n\ return 0; }
方法二:
#define pi 3.1415926 #include
{float h,r,l,s,sq,vq,vz;
printf(\请输入圆半径r,圆柱高h∶\
scanf(\,&h); //要求输入圆半径r和圆柱高h l=2*pi*r; //计算圆周长l s=r*r*pi; //计算圆面积s
sq=4*pi*pow(r,2); //计算圆球表面积sq vq=3.0/4.0*pi*pow(r,3); //计算圆球体积vq vz=pi*pow(r,2)*h; //计算圆柱体积vz printf(\圆周长为: l=%6.2f\\n\ printf(\圆面积为: s=%6.2f\\n\ printf(\圆球表面积为: sq=%6.2f\\n\ printf(\圆球体积为: v=%6.2f\\n\ printf(\圆柱体积为: vz=%6.2f\\n\ return 0; }
第4章
第4题
方法一
#include
int a,b,c;
printf(\请输入三个整数:\
scanf(\ if (a
printf(\ else
printf(\ else if (a printf(\ else printf(\ return 0; } 方法二: #include { int a,b,c,temp,max; printf(\请输入三个整数:\ scanf(\ temp=(a>b)?a:b; /*将a和b中的大者存入temp中*/ max=(temp>c)?temp:c; /*将a和b中的大者与c比较,取最大者*/ printf(\三个整数的最大数是%d\\n\ return 0; } 第6题
共分享92篇相关文档