热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

二级c语言机试题目,计算机二级考试C语言机试题目.doc

计算机二级考试C语言机试题目题目1编一个函数fun(char*s),函数的功能是把字符串中的内容逆置。例子如:字符串中原有的内容为:abcdefg&#x

计算机二级考试C语言机试题目

题目1

编一个函数fun(char *s),函数的功能是把字符串中的内容逆置。

例子如:字符串中原有的内容为:abcdefg,则调用该函数后,串中的内容为:gfedcba

试题程序:

#include

#include

#include

#define N 81

/*注:该题的算法是先分别找出字符串的两头,然后同时逐一往中间移动,每移动一次

都进行两字符的位置对换,直到中间字符(用s+i

地址,因此要注意把它的内容取出再进行换位。即先进行取内容运算*) */

fun(char *s)

{ int i=0,t,n=strlen(s);

for(;s+i

{t=*(s+i);*(s+i)=*(s+n-1-i);*(s+n-1-i)=t;}

}

main()

{ char a[N];

clrscr();

printf("Enter a string:"); gets(a);

printf("The original string is:");puts(a);

fun(a);

printf("\n");

printf("The string after modified:");

puts(a);

}

题目2

写程序,实现矩阵(3行3列)的转置(即行列互换)。

例如,输入一面的矩阵:

程序输出:

试题程序:

#include

#include

/*这题的关键在于进行行列下标转换的算法,由矩阵的对称性我们不难看出在进行行列

互换时a[j]在好是与a[j]互换,因而只要我位让程序走完矩阵的左上角即可(用

for(i&#61;0;i<2;i&#43;&#43;)再套for(j&#61;i&#43;1;j<3;j&#43;&#43;)来完成左上角的走动。*/

int fun(int array[3][3])

{ int i,j,t;

for(i&#61;0;i<2;i&#43;&#43;)

for(j&#61;i&#43;1;j<3;j&#43;&#43;)

{t&#61;array[j];array[j]&#61;array[j];array[j]&#61;t;}

}

main()

{ int i,j;

int array[3][3]&#61;{{100,200,300},{400,500,600},{700,800,900}};

clrscr();

for(i&#61;0;i<3;i&#43;&#43;)

{for(j&#61;0;j<3;j&#43;&#43;)

printf("%7d",array[j]);

printf("\n");

}

fun(array);

printf("Converted array:\n");

for(i&#61;0;i<3;i&#43;&#43;)

{for(j&#61;0;j<3;j&#43;&#43;)

printf("%7d",array[j]);

printf("\n");

}

}

题目3

请编一个函数fun(int *a,int n,int *odd,int *even)&#xff0c;函数的功能是分别求出数

组中所有奇数之和以及所有偶数之和。形参n给了数组中数据的个数&#xff1a;利用指针odd返回

奇数之和&#xff0c;利用指针even返回偶娄这和。

例如&#xff1a;数组中的值依次为&#xff1a;1&#xff0c;8&#xff0c;2&#xff0c;3&#xff0c;11&#xff0c;6&#xff1b;则利用指针odd返回奇数之和24&#xff1b;利用

指针even返回偶数之和8。

试题程序。

#include

#include

#define N 20

/*注&#xff1a;该题的算法是&#xff1a;用for()循环一步一步地找元素&#xff0c;用if(!a%2)来判断是否是奇

数&#xff0c;%运算是求余运算&#xff0c;当对2求余为1时表示原数为奇数&#xff0c;否则为偶数。*/

fun(int *a,int n,int *odd,int *even)

{ int i; *even&#61;0;*odd&#61;0;

for(i&#61;0;i

if(!(a%2))

*even&#43;&#61;a;

else

*odd&#43;&#61;a;

}

main()

{ int a[N]&#61;{1,9,2,3,11,6},i,n&#61;6,odd,even;

clrscr();

printf("The original data is:\n");

for(i&#61;0;i

printf("\n\n");

fun(a,n,&odd,&even);

printf("The sum of odd numbers:%d\n",odd);

printf("The sum of even number:%d\n",even);

}

题目4

要求程序的功能是&#xff1a;把20个随机数存入一个数组&#xff0c;然后输出该数组中的最小值。其

中确定最小值的下标的操作在fun函数中实现&#xff0c;请给出该函数的定义。

试题程序。

#include

#include <



推荐阅读
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • C语言判断正整数能否被整除的程序
    本文介绍了使用C语言编写的判断正整数能否被整除的程序,包括输入一个三位正整数,判断是否能被3整除且至少包含数字3的方法。同时还介绍了使用qsort函数进行快速排序的算法。 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • 本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ... [详细]
  • This article discusses the efficiency of using char str[] and char *str and whether there is any reason to prefer one over the other. It explains the difference between the two and provides an example to illustrate their usage. ... [详细]
author-avatar
淀死鈊
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有