第七次c语言上机实验课.docx
《第七次c语言上机实验课.docx》由会员分享,可在线阅读,更多相关《第七次c语言上机实验课.docx(7页珍藏版)》请在冰豆网上搜索。
![第七次c语言上机实验课.docx](https://file1.bdocx.com/fileroot1/2023-1/31/8b5b615b-e7c3-47a8-8a5a-9904cb7bc1d9/8b5b615b-e7c3-47a8-8a5a-9904cb7bc1d91.gif)
第七次c语言上机实验课
上机任务
一.选择题
1、以下错误的描述是【】。
Abreak语句不能用于循环语句和switch语句外的任何其他语句
B在switch语句中使用break语句或continue语句的作用相同
C在循环语句中使用continue语句是为了结束本次循环,而不是终止整个循环
D在循环语句中使用break语句是为了使流程跳出循环体,提前结束循环
2、以下程序段运行后,循环体运行的次数为()。
inti=10,x;
for(;i<10;i++)x=x+i;
A.10B.0C.1D.无限
3、以下程序段运行后x的值为()。
inti=0,x=0;
for(;i<=5;i++,i++)
{x+=3;}
A.15B.6C.12D.9
4.下面程序的运行结果是___________。
#include
main()
{
inta,s,n,count;
a=2;s=0;n=1;count=1;
while(count<=3){n=n*a;s=s+n;++count;}
printf(“s=%d”,s);
}
A.14B.8C.30D.3
5、以下程序输入3时,输出结果是
main()
{intk;scanf(“%d”,&k);
switch(k)
{case1:
printf(“%d”,k++);
case2:
printf(“%d”,k++);
case3:
printf(“%d”,k++);
case4:
printf(“%d”,k++);break;
default:
printf(“FULL!
”);}
printf(“\n”);}
A.3B.4C.34D.45
6、以下程序段运行后,循环体中的"count+=2;"语句运行的次数为()。
inti,j,count=0;
for(i=1;i<=4;i++)
{for(j=1;j<=i;j++)
{count+=2;
printf("%d",count);
}
}
A.8次B.10次C.16次D.20次
7、以下程序的运行结果是()。
voidmain( )
{intsum=0,item=0;
while(item<5)
{
item++;
sum+=item;
if(sum>=6)
break;
}
printf("%d\n",sum);
}
A.10B.15C.6D.7
二、改错题
1.程序Cmody012.C中,函数fun(intn)的功能是:
根据参数n,
计算大于10的最小n个能被3整数的正整数的倒数之和。
例如:
doublefun(intn)
{doubley=0.0;
inti,j;
j=0;
for(i=1;;i++)
{
/**/if((i<10)&&(i%3==0))/**/
{
/**/y+=1/i;/**/
j++;
}
if(j==n)break;
}
returny;
}
2.程序Cmody031.C的功能是:
从键盘上输入两个整数,及一个运算符(+、-、*、/或%),进行相应的运算后输出运算的结果。
如输入:
1+2将输出:
1+2=3
#include
#include
voidmain( )
{intm,n,result,flag=0;
/**/charch,/**/
clrscr( );
printf("Inputanexpression:
");
scanf("%d%c%d",&m,&ch,&n);
/**/switchch/**/
{case'+':
result=m+n;break;
case'-':
result=m-n;break;
case'*':
result=m*n;break;
case'%':
result=m%n;break;
case'/':
result=m/n;break;
default:
{printf("Error!
\n");flag=1;}
}
if(!
flag)printf("%d%c%d=%d\n",m,ch,n,result);
getch( );
}
3.程序Cmody081.C,其功能是求一堆零件的总数(100到200之间)。
如果分成4个零件一组的若干组,则多2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多5个零件。
#include
voidmain( )
{
inti;
/**/for(i=100;i<200;i++);/**/
if((i-2)%4==0)
if(!
((i-3)%7))
if(i%9==5)
printf("%d\n",/**/&i/**/);
getch( );
}
4.程序Cmody111.c,输出如下所示图形:
@
@@
@@@
@@@@
@@@@@
@@@@@@
#include
#include
voidmain( )
{
/**/inti;j;/**/
/**/for(i=6;i>1;i--)/**/
{
printf("@");
for(j=1;j<=6-i;j++)
printf("@");
printf(/**/"\r"/**/);
}
getch( );
}
三、填空题
1.补充程序Ccon011.C,使其计算
。
#include
#include
voidmain( )
{
intx;
/**//**/
printf("Inputaninteger:
");
scanf("%d",&x);
f=/**//**/;
printf("F(x)=%f\n",f);
}
2.补充程序Ccon112.c,其功能是求下列级数的部分和。
ex=1+x+
+
+……+
+……
例如:
当m=100,x=2时,ex=7.389057
#include
main( )
{
inti,m;
floatx,s,tem;
printf("Inputmandx\n");
scanf("%d%f",&m,&x);
/**//**/
for(i=1;/**//**/;i++)
{
tem*=x/i;
s+=tem;
}
printf("e**%.2f=%f\n",x,s);
getch( );
}
3.补充程序Ccon022.C,使其实现输入若干整数,统计其中大于零和小于零的个数。
以零结束输入。
#include
voidmain()
{
intn,a,b;
/**/
/**/
scanf("%d",&n);
while(/**//**/)
{
if(n>0)a++;
else/**//**/
scanf("%d",&n);
}
printf("Positiveinteger:
%d,negativeinteger:
%d\n",a,b);
}