第52套:
给定程序中,函数fun的功能是:将N×N矩阵中元素的值按列右移1个位置, 右边被移出矩阵的元素绕回左边。例如,N=3,有下列矩阵
1 2 3
4 5 6
7 8 9
计算结果为
3 1 2
6 4 5
9 7 8
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
给定源程序:

#include <stdio.h>
#define N 4
void fun(int (*t)[N])
{ int i, j, x;
for(i=0; i<___1___; i++)
{
x=t[i][___2___] ;
for(j=N-1; j>=1; j--)
t[i][j]=t[i][j-1];
t[i][___3___]=x;
}
}
main()
{ int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j;
printf("The original array:\n");
for(i=0; i<N; i++)
{ for(j=0; j<N; j++) printf("%2d ",t[i][j]);
printf("\n");
}
fun(t);
printf("\nThe result is:\n");
for(i=0; i<N; i++)
{ for(j=0; j<N; j++) printf("%2d ",t[i][j]);
printf("\n");
}
}

解题思路:
第一处:函数fun是对N×N矩阵进行操作,for循环的终止值为N。
第二处:把最后一列的元素值赋值给临时变量x保存用来交换,所以应填:N-1。
第三处:第1列元素值使用x替换,由于C语言的下标是从0开始的,所以应填:0。


例如,若q的值为: 50.0,则函数值为: 49.394948。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
给定源程序:

#include <stdio.h>
double fun( double q )
{ int n; double s,t;
n = 2;
s = 2.0;
while (s<=q)
{
t=s;
s=s+(n+1)/n;
n++;
}
printf("n=%d\n",n);
return s;
}
main ( )
{
printf("%f\n", fun(50));
}

解题思路:
第一处:如果两个整数类型相除,结果仍为整数,所以必须转换其中一个数的类型,所以应改为:s+=(float)(n+1)/n;。
第二处:返回结果错误,应改为:return t;。


编写函数fun,它的功能是:求Fibonacci数列中大于t的最小的一个数,结果由函数返回。其中Fibonacci数列F(n)的定义为:
F(0)=0,F(1)=1
F(n)=F(n-1)+F(n-2)
例如:当t = 1000时,函数值为:1597。
注意: 部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:

#include <math.h>
#include <stdio.h>
int fun( int t)
{
}
main() /* 主函数 */
{ int n;
n=1000;
printf("n = %d, f = %d\n",n, fun(n));
NONO();
}

解题思路:
本题是考察考生用递推算法来求出斐波那契数列中每项的值。给出的程序就是用变量f、f0 和f1来表示递推的过程,给变量f0和f1最初分别置数列中第1项和第2项的值0和1,然后进入循环,执行语句f=f0+f1;将所得和值存入f中,这就是数列的第3项,把f1的值移入f0中,将f的值移入f1中,为求数列的下一列作好准备;接着进入下一次循环,通过语句f=f0+f1求得数列的第4项,不断重复以上步骤,每重复一次就依次求得数列的下一项,直至某项满足要为止。
参考答案:

int fun( int t)
{
int f0 = 0, f1 = 1, f ;
do {
f = f0 + f1 ;
f0 = f1 ;
f1 = f ;
} while(f < t) ;
return f ;
}

全国计算机等级考试题库二级C操作题100套(第52套)相关推荐

  1. 全国计算机等级考试题库二级C操作题100套(第88套)

    第88套: 函数fun的功能是:把形参a所指数组中的最大值放在a[0]中,接着求出a所指数组中的最小值放在a[1]中:再把a所指数组元素中的次大值放在a[2]中,把a数组元素中的次小值放在a[3]中: ...

  2. 全国计算机等级考试题库二级C操作题100套(第99套)

    第99套: 函数fun的功能是:将形参a所指数组中的前半部分元素中的值和后半部分元素中的值对换.形参n中存放数组中数据的个数,若n为奇数,则中间的元素不动. 例如:若a所指数组中的数据依次为:1.2. ...

  3. 全国计算机等级考试题库二级C操作题100套(第97套)

    第97套: 函数fun的功能是:逆置数组元素中的值.例如:若a所指数组中的数据依次为:1.2.3.4.5.6.7.8.9,则逆置后依次为:9.8.7.6.5.4.3.2.1.形参n给出数组中数据的个数 ...

  4. 全国计算机等级考试题库二级C操作题100套(第95套)

    第95套: 给定程序中,函数fun的功能是:计算N×N矩阵的主对角线元素和反向对角线元素之和,并作为函数值返回.注意:要求先累加主对角线元素中的值,然后累加反向对角线元素中的值.例如,若N=3,有下列 ...

  5. 全国计算机等级考试题库二级C操作题100套(第93套)

    第93套: 给定程序中已建立一个带有头结点的单向链表,在main函数中将多次调用fun 函数,每调用一次fun函数,输出链表尾部结点中的数据,并释放该结点,使链表 缩短. 请在程序的下划线处填入正确的 ...

  6. 全国计算机等级考试题库二级C操作题100套(第78套)

    第78套: 给定程序中,函数fun的功能是:将N×N矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换.例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 交换后为: 3 2 ...

  7. 全国计算机等级考试题库二级C操作题100套(第77套)

    第77套: 给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新的数,并作为函数值返回. 例如,输入一个整数:27638496,函数返回值为:64 ...

  8. 全国计算机等级考试题库二级C操作题100套(第75套)

    第75套: 给定程序中,函数fun的功能是:对形参ss所指字符串数组中的M个字符串按长度由短到长进行排序.ss所指字符串数组中共有M个字符串,且串长<N.请在程序的下划线处填入正确的内容并把下划 ...

  9. 全国计算机等级考试题库二级C操作题100套(第58套)

    第58套: 给定程序中,函数fun的功能是:把形参s所指字符串中最右边的n个字符复制 到形参t所指字符数组中,形成一个新串.若s所指字符串的长度小于n,则将整个 字符串复制到形参t所指字符数组中.例如 ...

最新文章

  1. 根据文件属性或权限进行find查找
  2. 【线段树】Frog Traveler(CF751D)
  3. 使用named_mutex实现读写锁,实现进程之间读共享写独占
  4. MySQL的数据类型和约束
  5. html ie动画效果,css3强大的动画效果animate使用说明及浏览器兼容介绍
  6. spring boot ---- jpa连接和操作mysql数据库
  7. phpmyadmin的config-default-php文件中各个配置参数的详细说明
  8. 简易CPU的C++实现
  9. iOS面试题06-其他
  10. extern 关键字详解
  11. 【实战经验总结】如何撰写标书
  12. 【终极】文件夹隐藏方法,彻底隐藏文件夹的方法!显示隐藏的文件也看不到
  13. 【15】蓝桥杯之史丰收速算(程序填空题)
  14. INCA车载ECU工具软件简介
  15. mybatis报错:argument type mismatch
  16. Qt中qrc文件编译后缺少预编译头文件
  17. 《Scikit-Learn与TensorFlow机器学习实用指南》 第04章 训练模型
  18. 数字化转型中的大数据治理架构
  19. 太及时了!13个Spring Boot练手项目,用好了,升职涨薪不用愁
  20. 信号--Signal

热门文章

  1. 广告主产品推词中的NLP
  2. Python 常用函数 configparser模块
  3. 删除文件夹里的图片,打印删除日志
  4. IOS中NSUserDefaults的用法
  5. SQL Server插入中文数据出现乱码问题
  6. ASP.NET控件开发基础5
  7. 红帽企业linux4参考指南读书笔记-GRUB引导器
  8. nand flash坏块管理OOB,BBT,ECC
  9. Makefile中的变量
  10. CMOS图像传感器——图像传感器噪声