请把下面程序补充完整,正确答案是( )。 main( ) { float radius,length,area,volume; printf("Input a radius:"); Scanf("%f",&radius); length=2.0*PI*radius; /*引用无参宏求周长*/area=PI*radius*redius; /*引用无参宏求而积*/ volume=PI*radius*radius*radius*3/4; /*引用无参宏求体积*/ printf("length=%.2f,area=%.2f,volume=%.2f\n",length,area,volume); }
A.PI=3.1415926
B.Const PI=3.14159
C.#define PI3.1415926
D.Float PI=3.14159
第1题:
下面程序段的输出结果是( )。 #include<stdio.h> main() {float x=1.236547; printf("%f\n",(int)(x*1000+0.5)/(float)1000); }
A.1.237000
B.输出格式说明与输出项不匹配,输出无定值
C.1.236000
D.1.24
第2题:
有以下程序 #include <stdio.h> main() { int n,*p=NULL; *p=&n; printf("Input n:");scanf("%d",&p);printf("output n:");printf("%d\n",p); } 该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是
A.int n,*p=NULL;
B.*p=&n;
C.scanf("%d",&p)
D.printf("%d\n",p);
第3题:
有以下程序 #include main() {int n,*p=NULL; *p=&n; printf(“Input n:”); scanf(“%d”,&p); printf(“output n:”); printf(“%d\\n”,p); }
该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是( )。
A.int n,*p=NULL;
B.*p=&n;
C.scanf(“%d”, &p)
D.printf(“%d\n”,p);
第4题:
以下程序的运行结果是( )。 define A 4 define B(x)A*x/2 main() {float c,a=8.0; c=B(A; printf("%f\n",C); }
第5题:
有以下程序: #inlucde<stdio.h> main()D)2 3 3 {int n,*P=NULL; *p=&n; printf("input n:");scanf("%d",&p);printf("output n:");printf("%d\n",p); } 该程序试图通过指针P为变量n读入数据并输出,但程序有多处错误,以下语句正确的是( )。
A.int n,*P=NULL;
B.*P=&n;
C.scanf(“%d",&p)
D.printf("%d\n",p);
第6题:
●试题六
阅读下列程序说明和C++代码,将应填入(n)处的字句写在答卷的对应栏内。
【说明】
源程序中定义了Circle类与Money类,Circle类可对半径为r的圆进行周长与面积的计算,而Money类用于计算一圆形游泳池的造价。游泳池四周有原形过道,过道外围上栅栏,过道宽度为3米,根据键入的游泳池半径,每米栅栏价格及每平方米过道价格,即可计算出游泳池的造价。请按要求完成下列操作,将程序补充完整。
①定义符号常量PI(值为3.14159f)与WIDTH(值为3.00f),分别用于表示圆周率与过道的固定宽度。
②定义Circle类默认构造函数,把私有成员radius初始化为参数r的值。
③完成Money类默认构造函数的定义,把私有成员FencePrice(每米栅栏的价格)、 ConcretePrice(每平方米过道的价格)初始化为参数f,c的值。
④完成Money类成员函数float Money::TotalMoney(float fencelen, float conarea)的定义,根据参数fencelen(栅栏的长度)和conarea(过道的面积),返回栅栏与过道的总造价。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test4.cpp清单如下:
#include <iostream.h>
(1)
class Circle
{
private:
float radius;
public:
(2)
float Circumference(){return 2 * PI * radius;}
float Area(){return PI * radius * radius;}
};
class Money
{
private:
float FencePrice;
float ConcretePrice;
public:
Money(float f,float c);
float TotalMoney(float fencelen, float conarea);
};
Money::Money(float f,float c)
{
(3)
}
float Money::TotalMoney(float fencelen, float conarea)
{
(4)
}
void main()
{
float radius,fence,concrete;
cout.setf(ios::fixed);
cout.setf(ios::showpoint);
cout.precision (2) ;
cout << "Enter the radius of the pool: ";
cin >> radius;
cout << "Enter the FencePrice: ";
cin >> fence;
cout << "Enter the ConcretePrice: ";
cin >> concrete;
Circle Pool(radius);
Circle PoolRim(radius + WIDTH);
Money mon(fence,concrete);
float totalmoney=mon.TotalMoney(PoolRim.Circumference(),(PoolRim.Area() - Pool.Area()));
cout << "The total money is RMB " << totalmoney << endl;
}
●试题六
【答案】(1)const float PI = 3.14159f;
const float WIDTH =3.00f;
(2)Circle(float r):radius(r){};
(3)FencePrice=f;
ConcretePrice=c;
(4)return FencePrice*fencelen+ConcretePrice*conarea;
【解析】本题考查了考生对符号常量的定义及类的定义与实现等方面的内容。注意常类型的定义应使用const关键字。
第7题:
main(){ float x=123.456; printf("%-5.2f\n",x);}以上程序输出的结果是______。
A.123.4
B.123.5
C.123.45
D.123.46
第8题:
阅读下列程序说明和C代码,把应填入其中n处的字句写在对应栏内。
【说明】
下面的程序能够计算不同图形的面积。程序中把每个图形的数据定义成结构类型,利用共同体类型描述2种图形的数据。程序根据输入参数代表的图形类型,求出图形的面积并输出。
【程序】
struct Circle
{
float x,y; /*圆心位置*/
float r; /*圆半径*/
};
struct Rectangle
{
float width; /*矩形宽*/
float length; /*矩形长*/
};
union shape
{
struct Circle circle;/*圆数据结构*/
struct Rectangle rectangle;/*矩形数据结构*/
};
main()
{
union shape a;
float area;
int i;
printf(“input number: 1circle,2rectangle,3 end\n”);
scanf("%d",&i);
while (1) /*循环接收输入,并计算输出*/
{
switch(i)
{
case 1:printf(“input radius:\n”);
scanf(“%f”, (2);/*共同体类型变量接收输入*/
area=3.1415926* (3);
printf(“the area of circle=%f\n”,area);
break;
case 2:printf(“input width and length :\n”);
seanf(“%f,%f”, (4);/*共同体类型变量接收输入*/。
area=(5);
printf(“the area of rectangle=%f\n”,area);
break;
}
printf(“input number:1 circle,2 rectangle,3 end\n”);
scanf(“%d”,&i);
}
}
第9题:
下列给定程序中,函数fun()的功能是;计算函数 F(x, y ,z)=(x+ y)/(x-y)+(z+ y)/(z-y)的值。其中x和y不相等,z和y不等。例如,当x的值为9,y的值为11,2的值为15时,函数值为-3.50。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main 函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include <stdio. h>
include <math. h>
/**************found******************/
define FU(m, n) (m/n)
float fun(float a, float b, float c)
{ float value;
value=FU(a+ b, a-b)+FU(c+ b, c-b);
/*************found******************/
return(Value);
}
main()
{ float x, y, z, sum;
printf ("Input x y z:: ");
scanf("%f%f%f", &x, &y, &z);
printf("x=%f, y=%f, z=%f\n ",x, y, z);
if (x==y||y==z) {printf ("Data error! \n ");
exit (0); }
sum=fun (x, y, z);
printf("The result is:%5. 2f\n ",sum);
}
第10题:
指出下面程序段中的错误,并说明出错原因【 】。
class Location {
int X, Y=20;
protected:
int zeroX, zeroY;
int SetZero(int ZeroX, iht ZeroY);
private:
int length, height;
public:
float radius;
void init(int initX,int initY);
int GetX();
Int GetY();
};