】;
/***********SPACE***********/
elseif(key>a[mid])【?
】;
/***********SPACE***********/
else【?
】;
}
return-1;
}
main()
{
inta[10]={1,2,3,4,5,6,7,8,9,10};
intb,c;
b=4;
c=fun(a,10,b);
if(c==-1)printf("notfound");
elseprintf("position%d\n",c);
}
答案:
1).low<=high或high>=low
2).high=mid-1
3).low=mid+1
4).returnmid或return(mid)
〖第14题〗(练习题所在文件夹:
611)?
?
?
?
?
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
以每行5个数输出500以内能被7或17整除的偶数,并求出其和。
程序中有4个空,填空使程序完整。
-------------------------------------------------------*/
#include
#include
main()
{
inti,n,sum;
clrscr();
n=0;
/***********SPACE***********/
【?
】
/***********SPACE***********/
for(i=1;【?
】;i++)
/***********SPACE***********/
if(【?
】)
if(i%2==0)
{sum=sum+i;
n++;
printf("%6d",i);
/***********SPACE***********/
if(【?
】)printf("\n");
}
printf("\ntotal=%d",sum);
}
答案:
1).sum=0;
2).i<=500或500>=i或i<501或501>i或!
(i>500)
3).i%7==0||i%17==0或i%17==0||i%7==0或(i%7==0)||(i%17==0)或(i%17==0)||(i%7==0)或i/7*7==i||i/17*17==i或(i/7*7==i)||(i/17*17==i)
4).n%5==0或n/5*5==n
〖第15题〗(练习题所在文件夹:
11)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
以下程序的功能是产生并输出如下形式的方阵。
1222221
3122214
3312144
3331444
3315144
3155514
1555551
-------------------------------------------------------*/
main()
{
inta[7][7];
inti,j;
for(i=0;i<7;i++)
for(j=0;j<7;j++)
{
/***********SPACE***********/
if(【?
】)a[i][j]=1;
/***********SPACE***********/
elseif(i】;
elseif(i>j&&i+j<6)a[i][j]=3;
/***********SPACE***********/
elseif(【?
】)a[i][j]=4;
elsea[i][j]=5;
}
for(i=0;i<7;i++)
{
for(j=0;j<7;j++)
printf("%4d",a[i][j]);
/***********SPACE***********/
【?
】;
}
}
答案:
1).i==j||i+j==6
2).a[i][j]=2
3).i6或j>i&&i+j>6或ii&&i+64).printf("\n")
〖第17题〗(练习题所在文件夹:
595)!
!
!
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
输出斐波那契(Fibonacci)数列(1,1,2,3,5,8,13……)的前20项。
-------------------------------------------------------*/
main()
{
/***********SPACE***********/
intf1,f2,f3,【?
】;
f1=1;
/***********SPACE***********/
【?
】;
printf("%8d%8d",f1,f2);
for(j=3;j<=20;j++)
{
/***********SPACE***********/
【?
】;
printf("%8d",f3);
f1=f2;
/***********SPACE***********/
【?
】;
}
}
答案:
1).j
2).f2=1
3).f3=f1+f2或f3=f2+f1
4).f2=f3
〖第18题〗(练习题所在文件夹:
22)?
?
?
?
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
以下程序的功能是求一个二维数组中每行的最大值和每行
的和。
-------------------------------------------------------*/
#include"stdlib.h"
main()
{
inta[5][5],b[5],c[5],i,j,k,s=0;
for(i=0;i<5;i++)
for(j=0;j<5;j++)
a[i][j]=random(40)+20;
for(i=0;i<5;i++)
{
/***********SPACE***********/
k=a[i][0];【?
】;
for(j=0;j<5;j++)
{
/***********SPACE***********/
if(k】;
s=s+a[i][j];
}
b[i]=k;
/***********SPACE***********/
【?
】;
}
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
/***********SPACE***********/
printf("%5d",【?
】);
printf("%5d%5d",b[i],c[i]);
printf("\n");
}
}
答案:
1).s=0
2).k=a[i][j]
3).c[i]=s
4).a[i][j]
〖第20题〗(练习题所在文件夹:
601)?
?
?
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
求1-3+5-7+……-99+101的值。
请填空
-------------------------------------------------------*/
main()
{
/***********SPACE***********/
inti,j=1,【?
】;
/***********SPACE***********/
for(i=1;i<=101;【?
】)
{
/***********SPACE***********/
sum+=【?
】;
j*=(-1);
}
printf("sum=%d",sum);
}
答案:
1).sum=0
2).i+=2或i=i+2或i=2+i
3).i*j或j*i
〖第21题〗(练习题所在文件夹:
21)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
以下程序的功能是打印以下图形。
*****
*****
*****
*****
*****
-------------------------------------------------------*/
main()
{
chara[5][9]={""};
inti,j;
for(i=0;i<5;i++)
/***********SPACE***********/
for(j=i;【?
】;j++)
a[i][j]='*';
/***********SPACE***********/
for(【?
】;i<5;i++)
{
for(j=0;j<9;j++)
/***********SPACE***********/
printf("%c",【?
】);
/***********SPACE***********/
【?
】;
}
}
答案:
1).jj或j<=i+4或i+4>=j
2).i=0
3).a[i][j]
4).printf("\n")
〖第23题〗(练习题所在文件夹:
596)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
以下程序不借助任何中间变量把a、b的值进行交换,请填空。
---------------------------------------------------------*/
#include
main()
{inta,b;
printf("Inputa,b");
scanf("%d,%