A 1, 2, 4 B 2,2,2
C 2,1,4 D 2,2,4
10. 若k为float型,则下列程序执行结果为()
k=2.0;
while (k!=0)
{printf(“%d”,k);
k--;}
printf(“\n”);
A 无限多次 B 0次
C 1次 D 2次
二 按题目要求填空完善下列程序(每题6分,共24分)
1. 按逆序输出一个字符串
Void reversr(str)
Char str[];
{
int len.i;
char c;
len=①;
for (i=0;i<②;i++)
{ c=③;
str[i]=str[len-i-1];
④=c;
}
}
#include <string.h>
main()
{
char string[256];
gets(string);
reverse(string);
puts(string);
}
2.输出Fibonacci数列的前15项,要求每行输出5项。
#define M 15
main()
{
int fib[M];
int i,
fib[0]=1;fin[1]=1;
for (i=2;i<M;i++)
①=fib[i-2]+②;
for(i=0;i<M;i++)
{ if ( ③ ) printf(“\n”);
④;
}
}
3. 用起泡法对10个按升序排序
main()
{
int a[10]={2,4,1,6,-1,34,56,78,-23,20};
int i,j,k;
for (j=0;j<① ;j++)
for (i=0; ② ;i++)
if ( ③ )
{ k=a[i];
④ ;
a[i+1]=k;
}
}
3. 输出100-200间的所有素数及其个数
main()
{
int m,k,I,n=0
for (m=101;m<=200;m++)
{ ①
for (i=2;i<=k;k++)
if ( ② ) break;
if ( ③ ) {printf(“%d “,m); n=n+1;}
}
printf(“%d”,n);
}
三 编程(共56分)
1.编写程序,求下面级数前n项中偶数项的和ES。在求和过程中,以第一个绝对值大于9999的项为末项,计算并输出和数ES。(其中^表示幂运算)
1!-2!+3!-4!+……+(-1)^(n-1)*n!+ …… (10分)
2.设计一个程序,对于从键盘输入的年、月、日,计算并输出相应是星期几。比如,1998年7月1日是星期三,要求输出形式为7—1—1998:<3>。 (12分)
[提示] 推算公式:
s=yy-1+(yy-1)/4-(yy-1)/100+(yy-1)/400+dd
w=s-7*(s/7)
其中yy是年份数,dd是yy年元旦到日期d的总天数,w是星期序数,w=0,1,2,…
3.编写程序:有两个正整数a和b,已知a*b=2048,求a、b各为何值时,a+b的值最小。(11分)
4.编写程序,找出一个4位数的完全平方数,该数减去1111后,结果仍是一个完全平方数。(完全平方数是一个整数,它是另一个整数的平方。例如25是5的平方,则25是一个完全平方数。)(10分)
5.已知在正文文件test.txt中存放有120个记录,每个记录中只有一个数。在文件中,从第一个数开始,每四个数为一组,第一个数为不同商场的代号(顺序号),其余三个数代表三类商品的营业额(万元)。编写程序,统计计算并向文件t2.dat输出各商场的总营业额
(13分)