请您留下宝贵的建议吧:)
广西百色高中欢迎您!

| 网站首页 | 学校概况 | 软件下载 | 图片中心 | 雁过留声 | 视频资源 | 校长信箱 | 内 部 网 |
| 同 学 录 | 网络办公 | 教学课件 | 优秀教案 | 试卷下载 | 教学素材 | 教学论文 | 电子图书 |

 
您现在的位置: 广西百色高中校园网 >> 学校概况 >> 学生频道 >> 信息技术 >> 试题下载 >> 文章正文 用户登录 新用户注册
   
   

综合练习一          【字体:
综合练习一
作者:仔仔    文章来源:本站原创    点击数:    更新时间:2006-9-26
综合练习一
 
一、选择题

1.要用一个数组存放某班30人3门课的考试成绩(考试成绩保留1位小数),下面哪个说明中的数组可以存放这些数据?
A)var s:array[1..3,1..30] of integer; 
B)var s:array["a".."c",1..30] of real;
C)var s:array[1..30,boolean] of real; 
D)var s:array[1..30,"A".."C"] of integer; 
2.设有说明 VAR x:ARRAY[1..3,"x".."z"]0F Real; 则x[3,"x"]是 
A)一个存放实型数据的数组元素 
B)一个具有3个字符型元素的数组 
C)一个具有3*3个实型元素的数组 
D)一个具有6个实型元素的数组

3.设有如下说明:
var a:array[1..4,1..4] of integer;
i,j:integer;
且以第1个下标代表行、第2个下标代表列给a赋值为:
3 2 1 4
4 3 3 1
3 2 4 3 
2 1 3 2
则执行程序段
FOR i:=1 TO 4 DO 
FOR j:=1 TO 4 DO 
a[i,j]:=a[a[i,j],a[j,i]];
writeln(a[2,3]) 
后输出的是:
A)1 B)2 C)3 D)4
 
4.已知有如下说明: 
VAR a:ARRAY[1..4,2..5]0F Integer; 
b:ARRAY[2..5,1..4]0F Integer; 
i,j:integer;
且a已赋值,若将a的所有元素传送给b,下面的程序段在运行时无错误的是 
A)for i:=1 to 4 do B)for i:=1 to 4 do
for j:=1 to 4 do for j:=2 to 5 do
b[j,i]:=a[i,j] b[i,j]:=a[i,j]
C)for i:=2 to 5 do D)for i:=1 to 4 do
b[i,i-1]:=a[i-1,i] b[i,i+1]:=a[i,i+1]

 

二、看程序写结果

1.

PROGRAM CHU7_3;
 VAR P,Q,S,T:INTEGER;
 BEGIN
  READLN(P);
  FOR Q:=P+1 TO 2*P DO
   BEGIN
    T:=0;
  S:=(P*Q)MOD(Q-P);
  IF S=0 THEN
      BEGIN
       T:=P+Q+(P*Q)DIV(Q-P);
       WRITE(T:4);
      END;
   END;
  READLN
END.
输入:12
输出:

 

2.

PROGRAM CHU7_2;
 VAR I,J,F:INTEGER;
     A:ARRAY[1..8]OF INTEGER;
 BEGIN
  FOR I:=1 TO 8 DO
   BEGIN
    F:=I MOD 2;
    IF F=0 THEN A[I]:=0
        ELSE A[I]:=1;
    FOR J:=1 TO I DO
     IF F=0 THEN A[I]:=A[I]+J
         ELSE A[I]:=A[I]*J
   END;
  FOR I:=1 TO 8 DO
   WRITE(A[I]:5);
END. 输出:

 

 
 

3.

var a:array[1..6] of integer;
 i,j,p,t:integer;
begin
 for i:=1 to n do read(a[i]);
 for j:=1 to n-1 do
begin
p:=j;
for i:=j to n do
if a[i]< a[p] then p:=i;
t:=a[p];a[p]:=a[j];a[j]:=t;
end;
 for i:=1 to n do
begin
write(a[i]:2);
if i mod 3=0 then writeln;
end
end.
输入:7 2 5 1 9 4   
输出:

4.

var i,j,n:integer;

begin

 readln(n);

 for i:=1 to 2*n do

  if i<=n then

   begin

    write("":20-i);

    for j:=1 to 2*i-1 do write("*");

    for j:=1 to 2*(n-i) do write(" ");

    for j:=1 to 2*i-1 do write("*");

    writeln

   end

  else

   begin

    write("":20-2*n+i);

    for j:=1 to 2*(2*n-i)-1 do write("*");

    for j:=1 to 2*(i-n) do write(" ");

    for j:=1 to 2*(2*n-i)-1 do write("*");

    writeln

   end

end.

 

输入:5

输出:

三、填空题:请将每空的正确答案写在横线上

输入n个0到100之间的整数,由小到大排序输出,每行输出8个
 程序清单:
 PROGRAM CHU7_5;
  VAR I,J,K,N,X:INTEGER;
    B:ARRAY[0..100]OF INTEGER;

 BEGIN
  READLN(N);
  FOR I:=0 TO 100 DO B[I]:=0;
 FOR I:=1 TO N DO
  BEGIN
   READLN(X);
   B[X]:= ① 
  END;
   ② 
FOR I:=0 TO 100 DO
  WHILE ③ DO
   BEGIN
    WRITE( ④ );
    K:=K+1;
    B[I]:=B[I]-1;
    IF ⑤ THEN WRITELN
   END;
 READLN
END.

四、编写程序
1.周末三位同学各带着7个鱼筐去打鱼,收工时有7个鱼筐装满了鱼,7个鱼筐装了一半,还有7个鱼筐是空的,问怎样分配这些鱼筐使得每位同学得到的鱼和鱼筐都是一样多。

2.设矩阵a为5×5的方阵,编制一个程序,实现下述功能 (1) 使a的全部元素为O; (2) 使a的上三角元素为0: (3) 使a的第二列元素等于0;(4) 使a的元素除主对角线元素之外,其他元素都为0

3.输入一个各个位上数字不全相同的四位数。把组成这个四位数的数字从大到小排列,形成由这四个数字构成的最大的四位数,再把组成这个四位数的数字从小到大排列,形成由这四个数字构成的最小的四位数,求出两数之差,得到一个新的四位数。如此循环总能得到最后的结果6174。请编程实现循环过程。
例输入:n=5346时
输出:6543-3456=3078 8730-378=8352 8532-2358=6174

4.设有n个人因坐成一圈,并且按照顺时针方向从1到n编号,由第s个人开始进行从1到m的报数,报数到第m个人时,此人出圈,再从下一个人重新开始从1到m报数,如此进行下去,直到所有的人都出圈为止。现在要求编程按照出圈的顺序,每10个人一组,输出这n个人的顺序表。

5.对给定的整数n(0<n<80),编程计算并输出i!(i的阶乘,i=1,2,…,n)的全部有效数字。 因i!的数字可能很大,故采用一维数组表示法存储计算结果。例如 14!=87178291200在数组a中可存储成
0 0 2 1 9 2 8 7 1 7 8 0 0…。在计算n!时采用了以加法代替乘法运算的办法。例如,由5!=120计算6!时, 把原来的120再累加5次120,得至6!=720。

6、输入年、月、日,求这一天是星期几。
算法提要:求出这一天离公元1年的元旦有多少天,然后对7求余{公元1年的元旦为星期一}

7、键入自然数N,打印出一个上下左右全方位对称的字符图形,其形如田字,边长2*N+1个字符,笔划均按字母顺序递增或递减对称排列。 
例如:N=3时,图形为: 


A B C D C B A 
B C B 
C B C 
D C B A B C D 
V B C 
B C B 
A B C D C B A 

8、键入两个自然数N和K,将N写成K个大于1的自然数相乘,要求这K个数按从小到大排列,而且除了第K个数之外,前面(K-1)个数是N分解出来的最小自然数。 
例如:N=24,K=2时,输出为24=2*12,而不是24=4*6 
N=3,K=2时,输出则为“No answer!”
文章录入:qinjun    责任编辑:qinjun 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
          最新热点       最新推荐       相关文章
    没有相关文章
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

       
     
     
     
    广西百色高中欢迎您!   网站地图 | 联系站长 | 友情链接 | 用户排行 | 版权申明 | 管理登录
    版权所有 Copyright© 2005-2010 广西百色高中 (桂ICP备05013955号)
    学校地址:广西百色市城乡路93号 电话号码:0776-2824142 传真:0776-2847293 邮政编码:533000
    站    长:覃钧  QQ:75331465            改版时间:2007年8月20日