第一章:
第6题
方法一:
#include <stdio.h>
int main()
{int a,b,c,max;
printf("please input a,b,c:\n");
scanf("%d,%d,%d",&a,&b,&c);
max=a;
if (max<b)
max=b;
if (max<c)
printf输出格式16 max=c;
printf("The largest number is %d\n",max);
return 0;
}
方法二:
#include <stdio.h>
int main()
{int max(int x,int y);
int a,b,c,d;
printf("please input a,b,c:\n");
scanf("%d,%d,%d",&a,&b,&c);
d=max(max(a,b),c);
printf("The largest number is %d\n",d);
return 0;
}
int max(int x,int y)
{ return (x>y)?x:y;
}
第三章
第3题
#include <stdio.h>
#include <math.h>
int main()
{float d=300000,p=6000,r=0.01,m;
m=log10(p/(p-d*r))/log10(1+r);
printf("m=%6.2f\n",m);
return 0;
}
第4题
#include <stdio.h>
int main()
{char c1,c2;
c1=97;
c2=98;
printf("c1=%c,c2=%c\n",c1,c2);
printf("c1=%d,c2=%d\n",c1,c2);
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 <stdio.h>
int main()
{int a,b;
float x,y;
char c1,c2;
scanf("a=%d b=%d",&a,&b);
scanf("%f %e",&x,&y);
scanf("%c%c",&c1,&c2);
printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n",a,b,x,y,c1,c2);
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 <stdio.h>
int main ()
{float h,r,l,s,sq,vq,vz;
float pi=3.141526;
printf("请输入圆半径r,圆柱高h∶");
scanf("%f,%f",&r,&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",l);
printf("圆面积为: s=%6.2f\n",s);
printf("圆球表面积为: sq=%6.2f\n",sq);
printf("圆球体积为: v=%6.2f\n",vq);
printf("圆柱体积为: vz=%6.2f\n",vz);
return 0;
}
方法二:
#define pi 3.1415926
#include<math.h>
#include <stdio.h>
int main ()
{float h,r,l,s,sq,vq,vz;
printf("请输入圆半径r,圆柱高h∶");
scanf("%f,%f",&r,&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",l);
printf("圆面积为: s=%6.2f\n",s);
printf("圆球表面积为: sq=%6.2f\n",sq);
printf("圆球体积为: v=%6.2f\n",vq);
printf("圆柱体积为: vz=%6.2f\n",vz);
return 0;
}
第4章
第4题
方法一
#include <stdio.h>
int main()
{
int a,b,c;
printf("请输入三个整数:");
scanf("%d,%d,%d",&a,&b,&c);
if (a<b)
if (b<c)
printf("max=%d\n",c);
else
printf("max=%d\n",b);
else if (a<c)
printf("max=%d\n",c);
else
printf("max=%d\n",a);
return 0;
}
方法二:
#include <stdio.h>
int main()
{ int a,b,c,temp,max;
printf("请输入三个整数:");
scanf("%d,%d,%d",&a,&b,&c);
temp=(a>b)?a:b; /*将a和b中的大者存入temp中*/
max=(temp>c)?temp:c; /*将a和b中的大者与c比较,取最大者*/
printf("三个整数的最大数是%d\n",max);
return 0;
}
第6题
#include <stdio.h>
int main()
{ int x,y;
printf("输入x:");
scanf("%d",&x);
if(x<1) y=x; /* x<1 */
else if(x<10) y=2*x-1; /* 1<=x<10 */
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论