期末及计算机二级c语言
- 格式:docx
- 大小:40.95 KB
- 文档页数:24
全国计算机等级考试二级c语言题库及答案1. 以下哪个选项不是C语言中的运算符?A. 赋值运算符B. 逗号运算符C. 条件运算符D. 逻辑运算符答案:C2. 在C语言中,以下哪个关键字用于定义一个函数?A. structB. unionC. voidD. int答案:D3. 若有以下代码片段:```cint a = 5, b = 10;a = a + b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 20答案:C4. 在C语言中,哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. whileD. do-while答案:B6. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A7. 若有以下代码片段:```cint x = 3;printf("%d", x++);```执行后,输出的结果是多少?A. 3B. 4C. 2D. 5答案:A8. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A9. 下列哪个选项不是C语言中的数组类型?A. 一维数组B. 二维数组C. 三维数组D. 指针数组答案:D10. 在C语言中,以下哪个关键字用于声明一个指针变量?A. intB. charC. floatD. void答案:D结束语:以上是全国计算机等级考试二级C语言的部分题库及答案,希望对您的学习和复习有所帮助。
计算机二级c语言试题及答案解析一、选择题1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A解析:关键字`struct`用于定义一个结构体,它允许将多个不同类型的数据项组合成一个单一的数据结构。
2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ::D. ||答案:C解析:`%`是取模运算符,`&&`是逻辑与运算符,`||`是逻辑或运算符,而`::`不是C语言中的运算符。
二、填空题1. 在C语言中,`________`关键字用于声明一个函数。
答案:int解析:在C语言中,`int`是用于声明一个函数的返回类型,表示该函数返回一个整数值。
2. 以下代码片段中,`________`用于定义一个名为`data`的数组,包含10个整数。
```cint data[10];```答案:int data[10];解析:`int data[10];`定义了一个名为`data`的数组,它包含10个整数。
三、编程题1. 编写一个C语言函数,计算并返回两个整数的和。
```cint add(int a, int b) {return a + b;}```答案:```cint add(int a, int b) {return a + b;}```解析:该函数接受两个整数参数`a`和`b`,计算它们的和,并返回结果。
2. 编写一个C语言程序,实现将一个字符串反转。
```c#include <stdio.h>#include <string.h>void reverse(char *str) {int len = strlen(str);for (int i = 0; i < len / 2; i++) { char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverse(str);printf("Reversed string: %s\n", str); return 0;}```答案:```c#include <stdio.h>#include <string.h>void reverse(char *str) {int len = strlen(str);for (int i = 0; i < len / 2; i++) { char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverse(str);printf("Reversed string: %s\n", str);return 0;}```解析:该程序定义了一个`reverse`函数,它接受一个字符串作为参数,并通过交换字符的方式将字符串反转。
全国计算机考试二级《C语言》复习资料一、C语言的特点C语言是近年来非常流行的语言,很多人宁愿放弃已经熟悉的其他语言而改用C语言,}概括起来,C语言程序具有如下的风格: ①C语言程序的函数具体模块结构风格,使得程序整体结构清晰、层次清楚,为模块化程序设计提供了强有力的支持。
②C语言的源程序的扩展名都是.C。
其原因是C语言有优于其他语言的一系列特点。
下面是C语言的`主要特点:(1)语言简洁、紧凑,并且使用方便、灵活;(2)运算符丰富; (3)数据结构丰富;(4)具有结构化的控制语句;(5)语法限制不太严格,使程序设计比较自由; (6)C语言允许用户直接访问物理地址,能进行位(bit)操作,可以直接对硬件进行操作。
二、源程序的书写规则C语言的书写规则。
C语言书写格式自由,一行内可以写几个语句,一个语句也可以分写在多行上。
C程序没有行号,每个语句和数据定义的最后必须有一个分号。
C语言中分号是语句中不可少的,即使是程序中的最后一个语句也应该包含分号。
C语言中的注释可以用〃/*〃用〃*/〃结束,注释可以在任何允许插入空格符的地方插入。
C语言中注释不允许嵌套,注释可以用西文,也可以用中文。
三、C语言的风格由于C语言对语法限制不太严格,为了保证程序的准确性和可读性,建议在书写程序采用阶梯缩进格式。
也就是按如下格式书写C语言程序: **********; *****() {**********; ********; {******; ...... }*********;③C语言中的注释格式为:/*注释内容*/ /与*之间不允许有空格,注释部分允许出现在程序中的任何位置。
④C语言中的所有语句都必须以分号“;”结束【计算机二级C语言公共基础知识】循环链表及其基本运算在线性链表中,虽然对数据元素的插入和删除操作比较简单,但由于它对第一个结点和空表需要单独处理,使得空表与非空表的处理不一致。
循环链表,即是采用另一种链接方式,它的特点如下:(1)在循环链表中增加一个表头结点,其数据域为任意或根据需要来设置,指针域指向线性表的第一个元素的结点。
计算机二级考试c语言试题及答案计算机二级考试C语言试题及答案一、选择题1. 在C语言中,以下哪个选项是正确的整型常量?A. 0x123B. 123.0C. 123e2D. 123.0L答案:A2. 以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!", 'Hello, World!'D. "Hello, World!'"答案:A4. 在C语言中,以下哪个选项是正确的函数定义?A. int add(int a, int b) { return a + b; }B. int add(int a; int b) { return a + b; }C. int add(int a, int b) { return a - b; }D. int add(a, b) { return a + b; }答案:A5. 在C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int array[10] = {0};D. int array = 10;答案:A二、填空题1. 在C语言中,用于输入的函数是___________。
答案:scanf2. 在C语言中,用于输出的函数是___________。
答案:printf3. 在C语言中,用于计算两个整数的差的运算符是___________。
答案:-4. 在C语言中,用于定义一个整型变量的关键字是___________。
答案:int5. 在C语言中,用于定义一个字符型变量的关键字是___________。
计算机二级考试C语言知识点总结C语言是一种通用的高级编程语言,广泛应用于计算机科学领域。
它以其简洁的语法、强大的功能和高效的性能而闻名。
对于计算机二级考试而言,掌握C语言的基本知识点至关重要。
下面是对C语言知识点的总结:1. C语言基础:包括变量、常量、数据类型、运算符等。
在C语言中,变量用于存储数据,常量是不会改变的值,数据类型决定了变量或表达式的性质,运算符用于进行各种数学和逻辑运算。
2. 输入和输出:通过scanf()函数从标准输入读取数据,通过printf()函数将数据输出到标准输出。
此外,还有其他用于输入和输出的函数,如gets()、puts()、getchar()等。
3. 控制结构:包括顺序结构、选择结构和循环结构。
顺序结构按照代码的顺序执行,选择结构根据条件选择不同的执行路径,循环结构重复执行一段代码。
4. 数组:是一种存储多个相同类型数据的方式。
通过数组可以访问和修改多个数据。
数组的元素是通过索引进行访问的,索引从0开始。
5. 字符串:是由字符组成的数组。
C语言中使用字符数组来表示字符串。
可以使用字符串函数对字符串进行操作,如strlen()、strcpy()、strcat()等。
6. 函数:是一段可重复使用的代码块。
函数有输入和输出,输入是参数,输出是返回值。
通过函数可以使代码更加模块化和可读性更强。
7. 指针:是存储内存地址的变量。
指针可以指向不同类型的数据,可以通过指针间接访问和修改数据。
使用指针可以提高程序的效率和灵活性。
8. 结构体:是用户自定义的数据类型,可以将不同类型的数据组合在一起。
结构体可以包含基本数据类型、数组、指针等。
通过结构体可以创建更加复杂和有组织的数据类型。
9. 文件操作:可以通过C语言对文件进行读写操作。
通过打开文件、写入数据、读取数据、关闭文件等操作可以实现对文件的控制。
以上是C语言的一些基本知识点。
在计算机二级考试中,考察的内容可能会更加深入和具体。
计算机二级考试c语言计算机二级考试是一项旨在测试考生基本程序设计能力和C 语言知识的考试。
以下是一些参考内容,以帮助考生备考。
一、基本概念和语法要点(约100字)1. C语言基本概念:变量、常量、数据类型、运算符、控制语句等。
2. C语言语法要点:函数定义和调用、循环语句、条件语句、数组、指针、结构体等。
二、程序结构和函数(约100字)1. C程序结构:包括头文件引用、全局变量、主函数等。
2. 函数:函数的定义和调用、参数传递、返回值等。
三、数组和字符串(约100字)1. 数组:一维数组和二维数组的定义和使用、数组排序和查找算法。
2. 字符串:字符串的定义、输入输出、拼接、比较、查找等操作。
四、指针和动态内存分配(约100字)1. 指针:指针变量的定义、取值和赋值、指针和数组、指针和函数等。
2. 动态内存分配:动态内存分配函数malloc、free的使用,内存泄漏的问题。
五、文件操作和预处理指令(约100字)1. 文件操作:文件的打开和关闭、读写文件、文件指针的移动等。
2. 预处理指令:宏定义、条件编译等。
六、综合题(约100字)综合题一般会考察考生对所学知识的综合运用能力,例如要求编写一个简单的程序解决实际问题,或者给出一段代码要求分析输出结果等。
七、考试技巧和注意事项(约100字)1. 理解题意:仔细阅读题目要求,确保理解题目意思,避免答非所问。
2. 充分练习:多写代码,熟悉C语言的基本语法和常见的编程模式。
3. 注意细节:考试时要注意括号的匹配、变量的命名规范、循环的边界条件等细节问题,避免简单的语法错误。
通过对以上内容的学习和练习,考生可以全面提升自己的C 语言编程能力,更好地应对计算机二级考试。
希望以上参考内容对考生备考有所帮助。
计算机2级c语言C语言是一种通用的高级计算机编程语言,广泛应用于软件开发、嵌入式系统和操作系统等领域。
C语言的特点是简单、高效和可移植,并且在计算机科学教育中有着重要的地位。
在本文中,我们将讨论C语言的2级概念,并展示一些与此级别相关的重要知识点。
在C语言的学习过程中,一般会按照等级进行分级,2级通常是在基础知识的基础上进一步学习更高级的语言特性和编程技巧。
下面是2级C语言需要掌握的几个重要知识点。
1. 结构体和联合体(Structures and Unions):结构体是一种用户自定义的数据类型,可以用来组合不同类型的数据。
联合体与结构体类似,但它只能存储一个成员的值。
结构体和联合体的使用可以使数据更有组织性,方便管理和操作。
2. 动态内存分配(Dynamic Memory Allocation):动态内存分配是通过函数来分配和释放内存,以满足程序在运行时的需要。
在C语言中,使用malloc(函数来分配内存,使用free(函数来释放内存。
了解如何正确地使用动态内存分配是提高程序的效率和性能的重要因素。
3. 文件操作(File Operations):C语言提供了一套用于操作文件的标准库函数,如fopen(、fclose(、fread(和fwrite(等。
文件操作是软件开发中重要的一部分,可以用于读取或写入文件数据,进行文件的复制、重命名和删除等操作。
4. 指针和数组(Pointers and Arrays):指针和数组是C语言中非常重要的概念。
指针是一种变量,存储了内存地址。
数组是一种存储多个相同类型数据的容器。
指针和数组的结合使用可以实现内存的高效管理和访问数据。
5. 位操作(Bitwise Operations):位操作是对二进制数据进行操作的技术。
C语言提供了一些位操作的运算符,如与(&)、或(,)、异或(^)和位移(<<、>>)等。
位操作可以用来处理二进制数据,对图像、音频和视频等数据进行加密和解密等处理。
计算机二级c语言考试复习资料计算机二级C语言考试复习资料计算机二级C语言考试是许多计算机专业学生所面临的一项重要考试。
为了帮助大家更好地备考,下面将提供一些复习资料和技巧,希望对大家有所帮助。
一、基础知识回顾在开始复习之前,我们首先需要回顾一些C语言的基础知识。
C语言是一种高级编程语言,具有强大的功能和广泛的应用领域。
在复习过程中,我们需要重点关注以下几个方面:1. 数据类型:C语言中包含多种数据类型,如整型、浮点型、字符型等。
我们需要了解每种数据类型的特点和使用方法,以便正确地声明和使用变量。
2. 运算符:C语言中包含多种运算符,如算术运算符、关系运算符、逻辑运算符等。
我们需要熟悉这些运算符的优先级和使用规则,以便正确地进行计算和判断。
3. 控制结构:C语言中包含多种控制结构,如条件语句、循环语句、选择语句等。
我们需要了解这些控制结构的语法和用法,以便编写出结构清晰、逻辑正确的程序。
二、编程实践除了理论知识的复习,我们还需要进行一些编程实践,以提高我们的编程能力和解决问题的能力。
在进行编程实践时,我们可以选择一些经典的编程题目,如斐波那契数列、排序算法等,通过编写代码来实现这些功能,从而加深对C 语言的理解和掌握。
在编程实践过程中,我们需要注意以下几点:1. 规范代码风格:良好的代码风格可以提高代码的可读性和可维护性。
我们应该养成良好的编码习惯,如适当缩进、命名规范、注释等。
2. 错误处理和调试:在编程过程中,我们可能会遇到各种错误和异常情况。
我们需要学会正确地处理这些错误,并利用调试工具来定位和解决问题。
3. 代码复用和模块化:在编写代码时,我们应该尽量考虑代码的复用性和模块化。
通过将代码划分为多个函数或模块,可以提高代码的可重用性和可维护性。
三、参考资料推荐在复习过程中,参考资料的选择也是非常重要的。
下面是一些常用的参考资料,供大家参考:1.《C Primer Plus》:这是一本经典的C语言教材,内容全面、易于理解,适合初学者使用。
第一部分 C语言知识复习资料第一章C语言基本知识【考点1】C程序用C语言编写的程序称为C语言源程序,源程序文件的后缀名为“.c”。
源程序经编译后生成后缀名为“.obj”的目标文件,再把目标文件与各种库函数连接起来,生成“.exe”可执行文件。
C语言有三种基本结构:顺序结构、选择结构、循环结构。
【考点2】main函数又称主函数,是C程序的入口。
main后面跟一对小括号和一对花括号,花括号括起来的部分称为main 函数的函数体。
一个C程序从main函数开始执行,到main函数体执行完结束,而不论main函数在整个程序中的位置如何。
每一个程序有且仅有一个main函数,其他函数都是为main函数服务的。
【考点3】存储形式计算机在电脑中保存数据是采用二进制形式,由0或1构成的二进制称为位(bit),八个位构成一个字节(Byte),1个Byte=8个bit。
二进制、八进制、十六进制转化为十进制采用乘法,十进制转化为二进制、八进制、十六进制采用除法。
数据的存放位置就是它的地址。
【考点4】注释是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。
【考点5】书写格式每条语句的后面必须有一个分号,分号是语句的一部分。
一行内可写多条语句,一个语句可写在多行上。
【考点6】标识符是标识名字的有效字符序列,可以理解为C程序中的单词。
标识符的命名规则是:(1)标识符只能由字母、数字和下划线组成,字母区分大小写。
(2)标识符的第一个字符必须是字母或下划线,不能为数字。
C语言标识符分如下3类(1)关键字。
它们在程序中有固定的含义,不能另作他用。
如int、for、switch等。
(2)预定义标识符。
预先定义并具有特定含义的标识符。
如define、include等。
(3)用户标识符。
用户根据需要定义的标识符,符合命名规则且不与关键字相同。
【考点7】常量与变量常量是指在程序运行过程中,其值不能改变的量。
计算机二级知识点总结c语言计算机二级知识点总结C语言C语言是一种通用的编程语言,广泛应用于计算机科学和软件开发领域。
对于计算机二级考试来说,掌握C语言的基本知识点是非常重要的。
本文将对C语言的一些重要知识点进行总结,帮助考生更好地准备考试。
一、基本语法1. 字符集:C语言使用ASCII字符集进行编程。
2. 注释:单行注释以“//”开头,多行注释以“/*”开头,以“*/”结尾。
3. 标识符:由字母、数字和下划线组成,必须以字母或下划线开头。
4. 关键字:C语言有一些预定义的关键字,如int、char、if 等。
二、数据类型1. 基本数据类型:包括整型(int)、字符型(char)、浮点型(float)和双精度浮点型(double)。
2. 枚举类型:使用enum关键字定义的一组命名常量。
3. 派生数据类型:由基本数据类型和其他数据类型组合而成的数据类型,如数组、结构体和联合体。
三、运算符和表达式1. 算术运算符:包括加法(+)、减法(-)、乘法(*)、除法(/)和取模(%)。
2. 关系运算符:用于比较两个表达式的结果,如等于(==)、不等于(!=)、大于(>)等。
3. 逻辑运算符:用于连接两个或多个表达式,如与(&&)、或(||)和非(!)。
4. 条件运算符:用于根据条件选择不同的值,形式为“条件 ? 值1 : 值2”。
四、控制语句1. 选择结构:使用if语句进行条件判断,可以使用if-else、if-else if-else等嵌套形式。
2. 循环结构:使用for、while和do-while语句进行循环操作。
3. 跳转语句:使用break和continue语句控制程序的跳转。
五、数组和指针1. 数组:一组相同类型的数据的有序集合,在C语言中以一维或多维数组的形式存在。
2. 指针:用来存储变量的地址,可以通过指针来访问和修改变量的值。
六、函数1. 函数定义:包括返回类型、函数名、参数列表和函数体。
1、已知两边求矩形的面积。
#include <stdio.h>int main(){float a,b,s;a=3.0;b=4.5;s=a*b;printf("%f\n",s);return 0;}2、已知方程ax2+bx+c=0系数a、b、c的值(从键盘输入),假设b2-4ac>0,编程求方程的两个实根。
#include <stdio.h>#include <math.h>int main(){float a,b,c,x1,x2,delt;scanf("%f,%f,%f",&a,&b,&c);delt=b*b-4*a*c;x1=(-b+sqrt(delt))/(2*a);x2=(-b-sqrt(delt))/(2*a);printf("x1=%f,x2=%f\n",x1,x2);return 0;}3、已知方程ax2+bx+c=0系数a、b、c的值(从键盘输入),编程求方程的根。
提示:需要判断a不等0;根据delt是否大于、等于、小于零求出方程的两个不等的实根、相等的实根、两个虚根。
#include <stdio.h>#include <math.h>int main(){float a,b,c,x1,x2,delt;scanf("%f,%f,%f",&a,&b,&c);if(a>0){delt=b*b-4*a*c;if(delt>1e-6){x1=(-b+sqrt(delt))/(2*a);x2=(-b-sqrt(delt))/(2*a);printf("x1=%7.2f,x2=%7.2f\n",x1,x2);}else if(fabs(delt)<=1e-6)printf("x1=x2=%7.2f\n",-b/(2*a));else{printf("x1=%7.2f+%7.2fi\n",-b/(2*a),sqrt(fabs(delt))/(2*a));printf("x2=%7.2f-%7.2fi\n",-b/(2*a),sqrt(fabs(delt))/(2*a));}}elseprintf("系数a应大于0!");return 0;}4、将“Main”译成密码。
译码规律:用原来字母后面的第三个字母代替原来的字母。
#include <stdio.h>int main(){char c1='M',c2='a',c3='i',c4='n';c1=c1+3;c2=c2+3;c3=c3+3;c4=c4+3;printf("%c%c%c%c\n",c1,c2,c3,c4);return 0;}5、输入一个学生的百分制成绩,转换成五级等级制成绩输出。
提示:分别使用if语句和switch语句实现#include <stdio.h>int main(){int gr,g;scanf("%d",&gr);printf("use if:\n");if(gr>=90)printf("A");else if(gr>=80)printf("B");else if(gr>=70)printf("C");else if(gr>=60)printf("D");else printf("E");printf("\n");printf("use switch:\n");g=gr/10;switch(g){case 10:case 9:printf("A");break;case 8:printf("B");break;case 7:printf("C");break;case 6:printf("D");break;case 5:case 4:case 3:case 2:case 1:case 0:printf("E");break;default:printf("data error!\n");}printf("\n");return 0;}6、输入一个三位数,判断其是否为”水仙花”数。
水仙花数的含义:一个数的各位数字的立方和等于该数本身。
如:153=1*1*1+5*5*5+3*3*37、(1)输出1000~3000之间能被3整除但不能被7整除的数,要求每行输出5个数。
(2)求100~500以内的所有的素数的平方根之和。
(3)编写程序计算并输出下面前二十项的和。
要求保留4位小数。
数列为:2/1,3/2,5/3,8/5,13/8,21/13….(1)#include <stdio.h>int main(){int n,count=0;for(n=1000;n<=3000;n++){if((n%3==0)&&(n%7!=0)){printf("%d ",n);count++;if(count%5==0)printf("\n");}}return 0;}(2)#include <stdio.h>#include <math.h>int main(){int i,n;float s=0;for(i=100;i<=500;i++){for(n=2;n<=i/2;n++)if(i%n==0)break;if(n>i/2)s=s+sqrt(i);}printf("100~500以内的所有的素数的平方根之和为: %7.2f\n",s);return 0;}(3)#include<stdio.h>#include<math.h>int main(){int i,t,n=20,a=2,b=1;float s=0;for(i=1;i<=n;i++){s=s+(float)a/b;t=a;a=a+b;b=t;}printf("sum is %7.2f\n",s);return 0;}8、(1)、统计并逐行显示(每行5个数)区间[10000,30000]上的回文数。
回文数的含义是从左向右读与从右向左读是相同的,如12321。
#include <stdio.h>int main(){int i,j=0,k1,k4,k5;for(i=10000;i<=30000;i++){k1=i/1000;k4=i%100/10;k5=i%10;if(k1==k5*10+k4){printf("%7d",i);j++;if(j%5==0)printf("\n");}}}(2)、输入一段字符(以换行符结束),分别统计字母、数字、其它字符的个数。
#include <stdio.h>int main(){int k1,k2,k3;char ch;k1=0;k2=0;k3=0;while((ch=getchar())!='\n'){if((ch>='A' && ch<='Z') || (ch>='a' && ch<='z')) k1++;else if(ch>='0' && ch<='9')k2++;else k3++;}printf("k1=%d,k2=%d,k3=%d\n",k1,k2,k3);}(3)、用双重循环输出图形:AA B CA B C D EA B CA#include <stdio.h>int main(){int i,j;char ch='A';for(i=1;i<4;i++){ch='A';for(j=1;j<=6-2*i;j++)printf(" ");for(j=1;j<=2*i-1;j++){ printf("%2c",ch);ch++;}printf("\n");}for(i=1;i<=2;i++){ch='A';for(j=1;j<=2*i;j++)printf(" ");for(j=1;j<=5-2*i;j++){ printf("%2c",ch);ch++;}printf("\n");}return 0;}9、编写一个判断素数的函数,由主函数调用它求100~200之间素数的和。
/*定义素数函数,在主函数中调用*/#include<stdio.h>#include<math.h>int main(){int i,sum=0;int sushu( int ); /*声明素数函数*/for(i=100;i<201;i++){if(sushu(i))/*调用素数函数*/sum=sum+i;}printf("100-200之间的素数之和=%d\n",sum);return 0;}int sushu(int t)/*定义素数函数*/{int flag=1,n;for(n=2;n<sqrt(t)&&flag==1;n++)if(t%n==0)flag=0;return(flag);}编写一个求最大公约数的函数,由主函数来调用并输出结果。
/*输入两个数,求最大公约数*/#include"stdio.h"main(){int a,b;int zdgys(int m,int n);printf("请输入两个数:");scanf("%d %d",&a,&b);printf("%d\n",zdgys(a,b));/*调用最大公约数函数*/ return 0;}int zdgys(int m,int n)/*定义最大公约数的函数*/{int t,k;if(m<n){k=m;m=n;n=k;}while((t=m%n)!=0){m=n;n=t;}return(n); /*返回值为最大公约数*/}10、1、闰年是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的。