C++填空题 答案.docx

上传人:b****6 文档编号:6038350 上传时间:2023-01-03 格式:DOCX 页数:16 大小:22.79KB
下载 相关 举报
C++填空题 答案.docx_第1页
第1页 / 共16页
C++填空题 答案.docx_第2页
第2页 / 共16页
C++填空题 答案.docx_第3页
第3页 / 共16页
C++填空题 答案.docx_第4页
第4页 / 共16页
C++填空题 答案.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

C++填空题 答案.docx

《C++填空题 答案.docx》由会员分享,可在线阅读,更多相关《C++填空题 答案.docx(16页珍藏版)》请在冰豆网上搜索。

C++填空题 答案.docx

C++填空题答案

/8522.3x二、填空题(25道小题,共34分)

1、C语言程序执行的入口点是主函数main。

2、设y是int型变量,请写出判断y为奇数的关系表达式y%2!

=0。

3、设x是int型变量,请写出x是偶数并且不能被3整除的表达式y%2==0&&y%3!

=0。

 

4、设a,b为int型变量,x,y为float型变量,且设a=5,b=10,x=3.5,y=10.8。

为了得到以下的输出格式和结果,请将对应的输出语句补充完整。

//输出格式及结果:

a=5,b=10,x+y=14.3

printf("a=%d,b=%d,x+y=%4.1f”,a,b,x+y);

//或cout<<;

5、for(;;)语句相当于while

(1)

6、C语言中结束一次循环的语句是continue。

7、如C程序中对一个函数的调用在前,定义在后,则必须在调用前对该函数进行声明。

8、在函数定义中,形式参数是被调函数接收调用者数据的主要途径。

9、若被调函数是标准库函数,则在使用前需在程序的开头用#include命令将被调函数的信息包含进来。

10、在语句intfun(floatf,inti);中,变量f和i具有相同的作用域。

11、标识符在程序中可引用的区域称为作用域。

12、比较两个字符串大小的函数是strcmp()。

13、array是一个一维整形数组,有10个元素,前6个元素的初值是9,4,7,49,32,-5,

请写出正确的说明语句intarray[10]={9,4,7,49,32,-5};。

14、字符串是以‘\0’为结束标志的一维字符数组。

15、若用数组名作为函数调用的实参,传递给形参的将是数组的起始地址。

16、若有定义inti;int*p=&i;则&*p等价于&i。

17、下面的程序求区间[100,200]内10个随机整数中的最大数、最小数。

#include//或#include

#include

voidmain()

{

intmax,min,x;

x=rand()%101+100;

printf("%4d",x);//cout<

max=x;min=x;

for(inti=1;i<10;i++)

{

x=rand()%101+100;

printf("%4d",x);//cout<

if(x>max)max=x;

if(x

}

printf("\n最大数:

%4d,最小数:

%4d\n",max,min);

//cout<

"<

"<

}

18、下面程序的功能是从键盘输入的10个整数中,找出第一个能被7整除的数。

若找到,打印此数后退出循环;若未找到打印“noexist”。

#include//或#include

voidmain()

{

inti,a;

for(i=1;i<=10;i++)

{

scanf("%d",&a);//或cin>>a;

if(a%7==0)

{

printf("%d",a);//或cout<

break;

}

}

if(i>10)printf("noexist");//或cout<<"noexist";

}

19、下面这个程序打印出以下这个三角形.请填空。

0

11

222

3333

44444

555555

6666666

77777777

888888888

9999999999

voidmain()

{

inti,j;

for(i=0;i<10;i++)

{

for(j=0;j

printf(“%d”,i);

printf("\n");//或cout<

}

}

20、以下程序通过函数SunFun和F(x)求解x^2+1的累加和,x=0到10。

这里F(x)=x^2+1。

请填空。

(说明:

x^n即x的n次幂)

#include//或#include

voidmain()

{

printf("Thesun=%d\n",SunFun(10));

//或cout<<"Thesun="<<)<

}

SunFun(intn)

{intx,s=0;

for(x=0;x<=n;x++)s+=F(x);

returns;

}

F(intx)

{return(x*x+1);}

21、函数fun的功能是计算x^n。

主函数中已经正确定义m、a、b变量并赋值,并调用fun函数计算:

m=a^4+b^4-(a+b)^3。

(说明:

x^n即x的n次幂)

#include//或#include

doublefun(doublex,intn)

{

inti;doubley=1;

for(i=1;i<=n;i++)

y=y*x;

returny;

}

voidmain()

{

doublem,a,b;

a=7.3;

b=5.1;

m=fun(a,4)+fun(b,4)+fun(a+b,3);

printf("m=%lf\n",m);//或cout<<"m="<

}

22、以下程序可计算10名学生1门课成绩的平均分。

floataverage(floatarray[])

{inti;

floataver,sum=array[0];

for(i=1;i<10;i++)

sum+=array[i];

aver=sum/10;

return(aver);

}

voidmain()

{

floatscore[10],aver;

inti;

printf("input10scores:

");//或cout<<"input10scores:

";

for(i=0;i<10;i++)

scanf("%f",&score[i]);//或cin>>score[i];

aver=average(score);

printf("theaveragescoreis:

%f",aver);//或cout<<"theaveragescoreis"<

}

23、下面程序的功能是检查一个二维数组是否对称(即a[i][j]是否等于a[j][i])。

#include//或#include

voidmain()

{inta[4][4]={1,2,3,4,2,2,5,6,3,5,3,7,4,6,7,4};

inti,j,found=1;

for(i=0;i<4;i++)

{for(j=0;j<4;j++)

if(a[i][j]!

=a[j][i])

{

Found=0;

break;

}

if(found==0)

break;

}

if(found==1)

printf("yes");//或cout<"no";

else

printf("no");//或cout<"yes";

}

24、以下程序中,函数SumColumMin的功能是:

求出M行N列二维数组每列元素中的最小值,并计算它们的和值。

和值通过形参传回主函数输出。

请填空。

#defineM2

#defineN4

voidSumColumMin(inta[M][N],int*sum)

{inti,j,k,s=0;

for(i=0;i

{k=0;

for(j=1;j

if(a[k][i]>a[j][i])k=j;

s+=a[k][i];

}

*sum=s;

}

voidmain()

{intx[M][N]={3,2,5,1,4,1,8,3},s;

SumColumMin(x,&s);

printf("%d\n",s);//或cout<

}

25、fun函数的功能是:

首先实现在N行M列的二维数组a中,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数值返回。

请填空。

#defineN5

intfun(inta[N][N])

{introw,col,max,min;

for(row=0;row

{for(max=a[row][0],col=1;col

if(max

max=a[row][col];

if(row==0)min=max;

elseif(min>max)min=max;

}

returnmin;

}

26、C语言程序设计包括编写源代码、编辑、编译、连接和运行等步骤。

27、C语言中唯一的三目运算符是条件运算符?

:

28、有一个函数原型如下所示:

abc(floatx,floaty);

则该函数的返回类型为int。

29、在C语言中,形参的缺省存储类是auto。

30、设inta[2][3]={{5},{6}};则数组元素a[0][0]的值为5。

31、若有定义inta[4][5]={{1,2,3},{3,2,1,6},{1}};则二维数组a中元素a[2][2]的值是0。

32、已知有以下的说明,

inta[]={8,1,2,5,0,4,7,6,3,9};

那么a[*(a+a[3])]的值为0。

33、下面程序输出1至100之间每位数的乘积小于每位数的和的数。

#include//或#include

main()

{

intn,k=1,s=0,m;

for(n=1;n<=100;n++)

{

k=1;s=0;

m=n;

while(m!

=0)

{k*=m%10;

s+=m%10;

m=m/10;

}

if(k

}

}

34、以下程序的功能是调用函数fun计算:

m=1-2+3-4+…+9-10,并输出结果。

请填空。

intfun(intn)

{

intm=0,f=1,i;

for(i=1;i<=n;i++)

{m+=i*f;

f=-f;

}

Returnm;

}

voidmain()

{

printf("m=%d\n",f(10));//或cout<<"m="<<)<

}

35、C源程序的扩展名是.c或.cpp。

36、已知整型变量a=6,字符型变量ch='A',浮点数变量f=2.1,则表达式ch+a+f的值为

73.1。

(提示:

'A'的ASCII码为65)

37、表示条件:

1010&&x<100||x<0。

38、由顺序、选择和循环三种基本结构构成的算法称为结构化的算法。

39、C语言中至少执行一次循环体的循环语句是do{……}

while()。

40、C语言程序的基本单位是函数。

41、程序中变量的生存期各不相同。

在程序运行前就分配存储空间的变量是全局变量(外部变量)。

42、C语言中构成数组的各个元素具有相同的数据类型。

43、如果在程序中调用了strcat函数,则需要预处理命令即头文件#include

44、有如下程序段int*p,a=10,b=1;p=&a;a=*p+b;执行该程序段后,a的值为11。

45、斐波那契数列中的头两个数是0和1,从第三个数开始,每个数等于前两个数的和,即:

0,1,1,2,3,5,8,13,21,...等。

下面这个程序就是求斐波哪契数列的前20个数。

请填空。

#include//或#include

voidmain()

{

intf,f1,f2,i;

f1=0;f2=1;

printf("%d\n%d\n",f1,f2);//或cout<

for(i=3;i<=20;i++)

{

f=f1+f2;

printf("%d\n",f);//或cout<

f1=f2;

f2=f;

}

}

46、下面程序的功能是求出用数字0至9可以组成多少个没有重复的三位偶数。

#include//或#include

voidmain()

{intn,i,j,k;

n=0;

for(i=1;i<=9;i++)

for(k=0;k<=8;k++,k++)

if(k!

=i)

for(j=0;j<=9;j++)

if(j!

=k&&j!

=i)

n++;

printf("%d",n);//cout<

}

47、以下程序的功能是:

在主函数中输入一个整数n,调用函数fun计算n的所有因子(不包括1与自身)之和。

#include//或#include

intfun(intx)

{

ints=0,i;

for(inti=2;i<=x-1;i++)

if(x%i==0)

s+=i;

returns;

}

voidmain()

{

intn,sum;

printf("请输入一个整数:

");//或cout<<"请输入一个整数:

";

scanf("%d",&n);//或cin>>n;

printf("%d的所有因子(不包括1与自身)之和是%d",fun(n));

//或cout<<;

}

48、以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的最大值。

请填空:

#defineN3

#defineM4

voidLineMax(intx[N][M])

{inti,j,p;

for(i=0;i

{p=0;

for(j=1;j

if(x[i][p]

printf("Themaxvalueinline%dis%d\n",i,x[i][p]);

//或cout<<"Themaxvalueinline"<

}

}

main()

{intx[N][M]={1,.5,7,4,2,6,4,3,8,2,3,1};

LineMax(x);

}

49、设有说明语句:

chara='\72';则变量a包含1个字符。

50、已知floatx=2.5,y=4.7;inta=7;,表达式x+a/3*int(x+y)%2的值为2.5。

51、下面程序功能是计算100到1000之间有多少个其各位数字之和是5的数。

#include//或#include

voidmain()

{inti,s,k,count=0;

for(i=100;i<=1000;i++)

{

s=0;k=i;

while(k!

=0)

{s=s+k%10;

k=k/10;

}

if(s==5)

{

printf("%4d",i);//或cout<

count++;

}

}

printf("\n%d\n",count);//或cout<

}

52、下面程序的功能是打印100以内个位数为6且能被3整出的所有数。

#include//或#include

main()

{

inti,j;

for(i=0;i<100;i++)

{

j=i;

if(j%3!

=0||j%10!

=6)continue;

printf("%d,",j);//或cout<

}

}

53、以下search函数的功能是利用顺序查找法从数组a的10个元素中对关键字m进行查找。

顺序查找法的思路是:

从第一个元素开始,从前往后依次与关键字比较,直到找到此元素或查找到数组尾部时结束。

若找到,返回下标,否则返回-1;

intsearch(inta[],intm)

{

inti;

for(i=0;i<10;i++)

if(a[i]==m)

return(i);

return(-1);

}

voidmain()

{

inta[10],m,i,no;

for(i=0;i<10;i++)

scanf("%d",&a[i]);//cin>>a[i];

scanf("%d",&m);//cin>>m;

no=search(a,m);

if(no!

=-1)

printf("found!

%d",no+1);//cout<<"found!

"<

else

printf("notfound!

");//cout<<"notfound!

";

}

54、按照优先级从高到低的顺序写出C语言中的三种逻辑运算符!

&&||。

55、若要输出字段宽度为4的十进制数printf函数应使用格式说明"%4d",字段宽度为10实数应使用%10f。

56、假定a和b为int型变量,则执行以下语句后b的值为0。

a=1;b=10;do{b-=a;a++;}while(b);

57、在一个函数体内调用另一个函数,称为嵌套调用;函数调用自身,称为递归调用。

58、函数可以嵌套调用,但是不可以嵌套定义。

59、外部变量(全局变量)在函数外部定义,作用域从定义点开始到文件的结束。

60、有如下语句inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则*(p+8)的值为9。

61、以下程序的功能是:

从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束,请填空。

#inlude//或#include

voidmain()

{

Floatx,amax,amin;

scanf("%f",&x);//或cin>>x;

amax=x;

amin=x;

while(x>=0)

{

if(x>amax)

amax=x;

if(x

amin=x;

scanf("%f",&x);//或cin>>x;

}

printf("amax=%f,amin=%f\n",amax,amin);

//或cout<<"amax="<

}

62、C语言是一种面向过程(选择面向对象或面向过程)高级程序设计语言。

63、字符串"ab\n\\012/\\\""的长度为10。

64、C语言中结束本层循环的语句是break。

65、程序根据判断条件是否成立,从而选择执行不同的程序段。

这样的程序结构叫分支结构。

66、调用函数和被调用函数之间交流信息的通道是参数。

67、函数的返回值是通过函数中的return语句获得的。

68、若有以下说明和语句,则p1-p2的值为5。

inta[10],*p1,*p2;

p1=a;

p2=&a[5];

69、有语句charstr1[10],str2[10]={"china"};则能将字符串china赋给数组str1的正确语句是

strcpy(str1,str2);。

70、如图所示,该算式在四个字母所在处欠缺四个数位,下面这个程序用穷举法搜寻解法。

请填空。

1A8

*3B

_________

C73D

#include//或#include

voidmain()

{

intA,B,C,D;

intx,y,z;

for(A=1;A<=9;A++)

for(B=1;B<=9;B++)

for(C=1;C<=9;C++)

for(D=1;D<=9;D++)

{

x=100+10*A+8;

y=30+B;

z=1000*C+700+30+D;

if(x*y==z)

printf("A=%d,B=%d,C=%d,D=%d\n",A,B,C,D);

//或cout<<"A="<

}

}

71、C语言程序编译的过程是以源程序文件为单位的。

72、当具有块作用域的局部变量与具有文件作用域的全局变量同名时,局部变量优先。

73、若有定义:

staticinta[3][4]={{1,2},{0},{4,6,8,10));则初始化后,a[1][2]的值为0。

74、函数strlen("China")返回的值为5。

75、在C语言程序设计中,生成可执行程序(.exe文件)的步骤是编辑、编译、连接。

76、C语言中基本的数据类型有intflaotdoublecharbool。

77、主函数main定义如下:

voidmain()

{

inta,b;

cin>>a>>b;

if(b>a)

{

intt;

t=a;a=b;b=t;

}

}

其中t的作用域称作复合语句(分程序、程序块)。

78、以下程序从读入的整数数据中,统计大于零的整数个数和小于零的整数个数.用输入零来结束输入,程序中用变量i统计大于零的整数个数,用变量j统计小于零的整数个数.请填空.

#include

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1