数据结构程序填空题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序填空题
C语言基础
1.下列程序的功能是输出一个整数x的绝对值。将程序补充完整,填在空内。
#include
main()
{ int x, ;
scanf("%d",&x);
y= ;
printf("%d\n",y);
}
2. 以下程序的功能是:输出a、b、c三个变量中的最小值,请填空。
main()
{ int a,b,c,t1, ;
scanf("%d%d%d",&a,&b,&c);
t1=a
t2= ;
printf("%d\n",t2);
}
3. 下列程序的功能是将值为三位正整数的变量x中的数值按照个位、十位、百位的顺序拆分并输出。将程序补充完整,填在空内。
#include
main()
{ int =123;
printf("%d,%d,%d\n", ,x/10%10,x/100);
}
4. 下列程序的功能是输出一个整数x的绝对值。将程序补充完整,填在空内。
#include
main()
{ int x, ;
scanf("%d",&x);
y= ;
printf("%d\n",y);
}
5. 下列程序的功能是实现两个变量x和y的值的交换。将程序补充完整,填在空内。
main()
{ int x=10, =20;
x+=y;
y=x-y;
;
printf("\n%d,%d",x,y);
}
6. 下列程序的功能是实现两个变量x 和y 的值的交换。
main()
{ int =10,y=20;
x+=y;
y=x-y;
;
printf("\n%d,%d",x,y);
}
分支语句
1. 根据以下函数关系,对输入的x 值,计算出相应的y 值。
⎪⎪⎩⎪⎪⎨⎧<≤+<≤<≤<-=502020520105
100010x x x x x x y
main()
{ int x,c; float y;
scanf("%d",&x); if( ) c=-1;
else c=x/10;
switch(c)
{ case -1: y=-10;break;
case 0: y=x;break;
case 1: y=5;break; case 2:case 3:case 4:_____ _______;break;
default: y=-2;
}
if( y!=-2) printf("y=%f\n",y);
else printf("error\n");
}
2. 根据以下函数关系,对输入的x 值,计算出相应的y 值,设x 和y 都是整数。将程序补充完整,填在空内。
⎪⎩⎪⎨⎧≤<+≤<<==10
220211012x x x x
x x y main()
{ int x,y;
scanf("%d",&x);
if(x<=1) y=x;
else if( ③) y=10*x;
else if( ④) y=x*x+20;
else y=-1;
if(y!=-1) printf("%d\n",y);
else printf("error\n");
}
3. 程序实现当输入的字符为小写字母时,输出对应的大写字母。
#include "stdio.h"
main()
{ char ch1,ch2;
printf("请输入一个小写字符:");
scanf("%c", &ch1);
if( )
{ ch2 = ch1- ;
printf("%c",ch2);
}
else
printf("输入出错!");
}
循环语句
1.下列程序的功能是输出1~100之间能被7整除的所有整数。将程序补充完整,填在空内。
main()
{ int i;
for(i=1; ;i++)
{ if(i%7) ;
printf("%d ",i);
}
}
2. 以下程序统计从终端输入的字符中大写字母的个数,num[0]中统计字母A的个数,num[1]中统计字母B的个数,其它依次类推.用#号结束输入,请填空。
#include
main()
{ int num[26]={0},i; char c;
while(( c= )!='#')
if( ) num[c-‘A’]+=1;
for(i=0;i<26;i++)
printf("%c:%d\n",i+'A',num);
}
3. 以下程序的功能是输入任意整数给n后,输出n行由大写字母A开始构成的三角形字符阵列图形。例如,输入整数5时(注意:n不得大于10),程序运行结果如下:
A B C D E
F G H I
J K L
M N
O
请填空完成该程序。
main()
{ int i,j,n; char ch='A';
scanf("%d",&n) ;
if(n<11)
{ for(i=1;i<=n;i++)
{ for(j=1;j<=n-i+1;j++)
{ printf("%2c",ch) ;
;
}
;
}
}
else printf("n is too large!\n")
printf("\n");
}
4.有以下程序段,且变量已正确定义和赋值
for(s=1.0,k=1;k<=n;k++) s=s+1.0/(k*(k+1));
printf("s=%f\n\n",s);
请填空,使下面程序段的功能为完全相同
s=1.0;k=1;
while( )
{ s=s+1.0/(k*(k+1)); ;}
printf("s=%f\n\n",s);
5. 求1!+2!+3!+…+10!。将程序补充完整,填在空内。
#include
main()
{ float s=0,t=1;
int n;
for(n=1; ;n++)
{ t*=n;
;
}