C语言期末考试复习资料

合集下载

c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案1. 题目一:数组的逆序输出题目描述:编写一个C语言程序,实现一个整型数组的逆序输出。

程序代码:```c#include <stdio.h>int main() {int arr[] = {1, 2, 3, 4, 5};int n = sizeof(arr) / sizeof(arr[0]);for (int i = n - 1; i >= 0; i--) {printf("%d ", arr[i]);}return 0;}```答案解析:程序中定义了一个整型数组`arr`,使用`sizeof`运算符计算数组长度,并通过逆序循环输出数组元素。

2. 题目二:计算字符串中字符出现的次数题目描述:编写一个C语言程序,计算一个字符串中某个字符出现的次数。

程序代码:```c#include <stdio.h>#include <string.h>int main() {char str[] = "Moonshot AI";char ch = 'o';int count = 0;for (int i = 0; str[i] != '\0'; i++) {if (str[i] == ch) {count++;}}printf("字符'%c'出现的次数为:%d\n", ch, count);return 0;}```答案解析:程序中定义了一个字符串`str`和一个字符`ch`,通过循环遍历字符串并计数字符`ch`的出现次数。

3. 题目三:实现一个简单的计算器题目描述:编写一个C语言程序,实现一个简单的计算器,能够进行加、减、乘、除运算。

程序代码:```c#include <stdio.h>int main() {double num1, num2;char op;printf("请输入第一个数字:");scanf("%lf", &num1);printf("请输入运算符(+、-、*、/):");scanf(" %c", &op); // 注意在%c前面加空格,以跳过任何空白字符printf("请输入第二个数字:");scanf("%lf", &num2);switch (op) {case '+':printf("结果:%.2lf\n", num1 + num2);break;case '-':printf("结果:%.2lf\n", num1 - num2);break;case '*':printf("结果:%.2lf\n", num1 * num2);break;case '/':if (num2 != 0) {printf("结果:%.2lf\n", num1 / num2);} else {printf("除数不能为0\n");}break;default:printf("无效的运算符\n");}return 0;}```答案解析:程序首先接收用户输入的两个数字和一个运算符,然后使用`switch`语句根据运算符执行相应的运算,并输出结果。

c语言期末考试题库及详解答案

c语言期末考试题库及详解答案

c语言期末考试题库及详解答案C语言期末考试题库及详解答案一、选择题1. 下列哪个选项是C语言中正确的整型常量?A. 0.1234B. 0x12ABC. 0b1010D. 1e10答案:B2. C语言中,以下哪个关键字用于定义变量的存储类别?A. staticB. constC. typedefD. volatile答案:A3. 在C语言中,以下哪个运算符用于求两个数的余数?A. /B. %C.D. ++答案:B4. 下列哪个选项是C语言中正确的字符常量?A. 'A'B. "A"C. AD. 65答案:A5. 在C语言中,以下哪个函数用于计算两个数的最大值?A. max()B. min()C. pow()D. sqrt()答案:A二、填空题6. C语言中,用于定义数组的关键字是______。

答案:int7. C语言中,用于输入输出的库函数分别是______和______。

答案:scanf(); printf()8. C语言中,若要定义一个指针变量,需要使用关键字______。

答案:int*9. C语言中,用于定义函数的关键字是______。

答案:void 或其他数据类型10. C语言中,若要实现字符串的复制,可以使用库函数______。

答案:strcpy()三、简答题11. 简述C语言中结构体的定义方式。

答案:在C语言中,结构体是一种用户自定义的数据类型,它允许将多个不同类型的数据项组合成一个单一的类型。

结构体的定义方式如下:struct 结构体名 {数据类型成员名1;数据类型成员名2;...};12. 解释C语言中的递归函数。

答案:递归函数是一种函数自己调用自己的特殊函数。

递归函数通常用于解决可以被分解为相似子问题的问题。

递归函数需要有一个明确的终止条件,以防止无限递归。

四、编程题13. 编写一个C语言程序,实现求一个整数的阶乘。

答案:```c#include <stdio.h>long factorial(int n) {if (n <= 1) return 1;else return n * factorial(n - 1);}int main() {int num;printf("Enter a number: ");scanf("%d", &num);printf("Factorial of %d = %ld", num, factorial(num)); return 0;}```14. 编写一个C语言程序,实现字符串的反转。

c语言大期末考试题库及详解答案

c语言大期末考试题库及详解答案

c语言大期末考试题库及详解答案1. 选择题(1) 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A(2) 以下哪个选项是正确的C语言变量声明?A. int a = 10, b = 20;B. int a = 10; b = 20;C. int a = 10; int b = 20;D. int a = 10, b = 20;答案:A2. 填空题(1) 在C语言中,用于定义一个函数的关键字是____。

答案:void(2) 当使用指针变量时,用于获取指针所指向的值的运算符是____。

答案:*3. 简答题(1) 简述C语言中数组和指针的关系。

答案:在C语言中,数组名可以作为指向数组首元素的指针使用。

数组的每个元素可以通过指针偏移量来访问。

(2) 解释C语言中的预处理指令#include的作用。

答案: #include预处理指令用于在编译前将指定的文件包含到当前文件中,通常用于包含标准库或自定义的头文件。

4. 编程题(1) 编写一个C语言程序,计算并输出100以内所有偶数的和。

```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum);return 0;}```(2) 编写一个C语言函数,实现字符串的反转。

```cvoid reverseString(char* str) {int length = 0;while (str[length] != '\0') {length++;}for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}```5. 论述题(1) 论述C语言中指针的重要性及其应用场景。

大一期末c语言复习题库

大一期末c语言复习题库

大一期末c语言复习题库C语言作为计算机科学与技术专业学生的一门基础课程,对于理解计算机程序设计的原理和思想具有重要意义。

以下是为大一学生准备的C语言期末复习题库,涵盖了C语言的基本概念、数据类型、控制结构、数组、函数、指针、结构体、文件操作等重要知识点。

# 一、基本概念1. 解释C语言的特点。

2. 描述C语言的基本结构,包括预处理指令、函数、语句和注释。

3. 列举C语言中的基本数据类型,并解释它们的区别。

# 二、变量与数据类型1. 什么是变量?如何声明变量?2. 解释整型(int)、浮点型(float)、双精度型(double)和字符型(char)的区别。

3. 写出C语言中不同数据类型所占的存储空间大小。

# 三、运算符与表达式1. 列举C语言中的算术运算符,并给出示例。

2. 描述赋值运算符的用法。

3. 解释条件运算符(?:)的用法。

# 四、控制结构1. 描述if语句的用法,并给出一个例子。

2. 解释while循环和do-while循环的区别。

3. 写出for循环的一般形式,并解释其组成部分。

# 五、数组1. 什么是数组?数组有哪些类型?2. 如何声明和初始化一维数组和二维数组?3. 写出一个程序,实现冒泡排序算法。

# 六、函数1. 解释函数的定义和声明。

2. 描述函数参数的传递方式(值传递和引用传递)。

3. 写出一个自定义函数,实现求最大值的功能。

# 七、指针1. 解释指针的概念和用途。

2. 写出一个程序,使用指针交换两个变量的值。

3. 解释指针数组和数组指针的区别。

# 八、结构体1. 什么是结构体?如何定义结构体?2. 写出一个程序,使用结构体存储学生信息。

3. 解释结构体指针的用法。

# 九、文件操作1. 解释文件的概念和分类。

2. 描述文件的打开、关闭、读写操作。

3. 写出一个程序,实现将数据写入文件,并从文件中读取数据。

# 十、综合应用1. 编写一个程序,实现学生成绩管理系统,包括录入、查询、修改和删除功能。

c语言期末复习资料

c语言期末复习资料

c语言期末复习资料C语言是计算机科学中非常基础的一门编程语言,是程序员必须掌握的技能之一。

由于其简单易学的特点和广泛的应用范围,越来越多的人开始学习和使用C语言。

期末考试是C语言学习过程中的重要节点,为了帮助考生顺利通过考试,本文整理了一些C语言期末复习资料以供参考。

一、基础知识1.变量和数据类型C语言中的变量用于存储程序中使用的数据,数据类型是指变量所代表的数据的类型。

常见的C语言数据类型包括整型、浮点型、字符型、布尔型等。

掌握变量和数据类型的定义和使用是C 语言学习的第一步。

2.运算符和表达式C语言中的运算符用于对变量进行运算和操作,包括算术运算符、关系运算符、逻辑运算符等。

表达式是由变量和运算符组成的代码段,用于对变量进行操作和计算。

掌握运算符和表达式的使用和规则是C语言学习的基础。

3.条件语句和循环语句条件语句和循环语句是C语言中的两种重要的控制结构。

条件语句根据条件的真假来执行不同的代码段,常见的条件语句包括if语句和switch语句。

循环语句用于重复执行同一个代码段,常见的循环语句包括for循环、while循环和do-while循环。

掌握条件语句和循环语句的使用和应用是C语言学习的重要环节。

二、进阶技巧1.字符数组和字符串字符数组和字符串是C语言中非常常用的数据类型,用于处理字符和文本。

字符数组是由若干个字符组成的数组,字符串是由若干个字符组成的字符串常量。

掌握字符数组和字符串的定义和使用,能够更好地处理文本和数据输入输出等问题。

2.函数和指针函数是C语言中的重要的模块化编程方法,函数将程序的功能分解为若干个具有特定功能的独立模块。

指针是C语言中的重要的数据类型,它存储变量的内存地址,常用于访问复杂数据结构和实现高效的内存管理。

掌握函数和指针的使用和细节能够更好地组织程序和提高程序的执行效率。

3.结构体和文件操作结构体是C语言中用于组织复杂数据结构的数据类型,常用于存储各种类型的数据记录。

C语言期末复习.doc

C语言期末复习.doc

C语言期末复习.doc第一章C语言概述一、选择题1、C语言程序由什么组成()A、子程序B、主程序和子程序C、函数D、过程2、源程序要正确地运行,必须要有什么函数()A、Printf函数B、自定义的函数C、main函数D、不需要函数3、指出下面哪些是合法的标识符()A、3abB、intC、ABCD、a_3E、sum..aF、#abcG、_stu2H、abc f二、问答题1、C语言程序由哪几部分组成?C语言程序结构有什么特点?参考答案一、选择题1、C2、C二、问答题见教案第二章基本数据类型、运算符及表达式一、选择题1、C语言中的数据的基本类型包括()A、整型、实型、字符型和逻辑型B、整型、实型、字符型和结构体C、整型、实型、字符型和枚举型D、整型、实型、字符型和指针型2、在C语言中,不合法的int型常量是()A、32767B、0678C、0XABCD、32768L3、在C语言中,运算对象必须是整型数的运算符是()A、%B、\\C、%和\\D、**4、若已定义X和Y为double型,则表达式:x=1,y=x+3/2的值是()A、1B、2C、2.0D、2.55、若t为double类型,表达式t=1,t+5,t++的值就是()A、1B、6.0D、1.06、若有定义:int a=10,b=9,c=8;执行下面两条语句c=(a-=(b-5));c=(a%11)+(b=3);后,变量b的值为()A、9B、4C、3D、27、设int a=12,则执行完语句a+=a-=a*a后,a的值是_____A、22B、264C、144D、-264二、问答题:1、简述‘a’和“a”的区别。

参考答案一、选择题1、C2、D3、A4、D5、D6、C7、D二、问答题‘a’是字符常量“a”是字符串常量C语言规定:在每一个字符串的结尾加一个“字符串结束标志”,以便系统据此判断字符串是否结束。

C语言规定以字符’\\0’作为字符串结束标志。

如果有一个字符串”china”,实际上在内存中是占内存不是5个字节,而是6个字节,最后一个是’\\0’。

c语言期末考试题库大题及详解答案

c语言期末考试题库大题及详解答案C语言期末考试题库大题及详解答案一、简答题1. 请简述C语言的基本数据类型及其特点。

答案:C语言的基本数据类型包括整型(int)、浮点型(float和double)、字符型(char)和枚举型(enum)。

整型用于存储整数,浮点型用于存储小数,字符型用于存储单个字符,枚举型用于定义一组命名的常量。

每种数据类型都有其特定的取值范围和占用内存大小。

2. 请解释C语言中的数组和指针的区别。

答案:数组是一种数据结构,用于存储固定数量的相同类型元素,可以通过下标访问元素。

指针是一个变量,它存储另一个变量的内存地址。

数组名可以作为指向数组第一个元素的指针使用,但数组本身是一个固定大小的内存块,而指针可以被赋值为不同的地址,具有动态性。

二、编程题1. 编写一个C语言程序,实现输入三个整数,找出其中的最大值并输出。

答案:```c#include <stdio.h>int main() {int num1, num2, num3, max;printf("请输入三个整数:");scanf("%d %d %d", &num1, &num2, &num3);max = (num1 > num2) ? ((num1 > num3) ? num1 : num3) : ((num2 > num3) ? num2 : num3);printf("最大值是:%d\n", max);return 0;}```2. 编写一个C语言程序,实现字符串的反转。

答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];printf("请输入一个字符串:");fgets(str, sizeof(str), stdin); // 使用fgets以包含空格int len = strlen(str) - 1; // 减去换行符长度for (int i = len; i >= 0; --i) {printf("%c", str[i]);}printf("\n");return 0;}```三、综合题1. 请编写一个C语言程序,实现一个简单的计算器,能够进行加、减、乘、除四种基本运算。

c语言大一期末考试题库及详解答案

c语言大一期末考试题库及详解答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 以下哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. while答案:B3. 在C语言中,以下哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A4. 以下哪个函数用于将字符串复制到另一个字符串?A. strcatB. strcpyC. strcmpD. strlen答案:B5. 在C语言中,以下哪个数据类型用于存储浮点数?A. intB. floatC. charD. double答案:B6. 以下哪个选项不是C语言中合法的变量名?A. _myVarB. my_varC. 2myVarD. my_var2答案:C7. C语言中,以下哪个函数用于计算数组中元素的个数?A. sizeofB. countC. lengthD. size答案:A8. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. functionD. def答案:A9. 以下哪个选项不是C语言中合法的注释?A. // This is a commentB. /* This is a comment */C. /* This is a comment */D. // This is a comment答案:C10. 在C语言中,以下哪个关键字用于定义一个指针?A. ptrB. pointerC. *D. ref答案:C二、填空题(每题2分,共20分)1. C语言中,定义一个整型变量的关键字是________。

答案:int2. 用于定义一个字符变量的关键字是________。

答案:char3. C语言中,用于定义一个浮点型变量的关键字是________。

答案:float4. 在C语言中,________运算符用于比较两个数是否相等。

c期末考点总结

c期末考点总结C语言是一门非常重要的编程语言,是许多计算机科学与软件工程专业的基础必修课。

期末考试是对学生学习成果的一次综合性考核,下面将总结C语言期末考点,帮助大家复习备考。

一、基础知识1. 数据类型:包括基本类型和派生类型,如int、float、char、数组、结构体等。

2. 变量和常量:如何定义变量、常量,变量的作用域和生命周期。

3. 运算符:算术运算符、关系运算符、逻辑运算符、位运算符等,以及它们的优先级和结合性。

4. 控制语句:条件语句(if-else、switch)、循环语句(while、do-while、for)。

5. 输入输出:如何从键盘获取输入,如何将数据输出到屏幕上。

6. 函数:如何定义函数、函数的参数传递和返回值。

7. 数组:如何定义和使用数组,多维数组。

8. 字符串:如何定义和使用字符串,字符串的处理函数。

9. 指针:如何定义和使用指针,指针与数组的关系。

10. 结构体和联合体:如何定义和使用结构体、联合体,结构体和指针的关系。

二、高级知识1. 动态内存分配:如何使用malloc、calloc、realloc函数进行动态内存分配和释放。

2. 文件操作:如何打开、读写、关闭文件,文件的定位指针。

3. 预处理器:如何使用宏定义、条件编译、文件包含等预处理指令。

4. 头文件:如何编写自定义的头文件并使用。

5. 递归:如何使用递归解决问题,递归的实现原理。

6. 指针与函数:如何使用指针作为函数参数,指针函数、指针数组、指针指针等。

7. 指针与字符串:如何使用指针处理字符串,字符串函数的实现。

8. 指针与结构体:如何定义指向结构体的指针,指针访问结构体成员。

9. 指针与动态内存分配:如何动态分配结构体指针,释放动态分配的内存。

10. 文件操作与结构体:如何将结构体数据保存到文件,从文件读取结构体数据。

三、综合应用期末考试通常会出一些综合性的编程题,要求学生综合运用所学知识进行程序设计。

大学c语言期末考试题库及答案

大学c语言期末考试题库及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明函数?A. intB. voidC. returnD. function答案:A2. 以下哪个选项是正确的C语言变量声明?A. int a = b = 2;B. int a = 2, b;C. int a = 2.0;D. int a = 2, b = 3.0;答案:B3. 在C语言中,以下哪个运算符用于逻辑“与”操作?A. &&B. ||C. !D. &答案:A4. 以下哪个选项是C语言中的合法数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2, 3};D. int array[5] = {1, 2, 3, 4, 5, 6};答案:B5. C语言中,以下哪个函数用于计算两个整数的和?A. max()B. pow()C. sqrt()D. sum()答案:D6. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A7. 以下哪个选项是C语言中的合法指针声明?A. int *ptr;B. int *ptr = 0;C. int *ptr = "hello";D. int *ptr = 5;答案:A8. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcat()B. strcpy()C. strcmp()D. strlen()答案:B9. C语言中,以下哪个关键字用于创建一个循环,直到满足某个条件?A. whileB. forC. do-whileD. switch答案:C10. 在C语言中,以下哪个函数用于动态内存分配?A. malloc()B. calloc()C. realloc()D. free()答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个宏。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3 C语言是结构化程序,有三种结构 (1)顺序结构; (2)选择结构; (3)循环结构;
4 C语言是由函数组成的,其中必须有一个并 且只有一个主函数 main,程序的执行从main 函数开始,到main 函数结束.
第二章
C的数据类型
C语言提供了以下一些数据类型。
整型 int char 单精度实型 float 双精度实型 double struct union enum void
2009级
2009年12月
为了同学们集中精力复习 特编制了本大纲 大纲包含了需要牢牢掌握的基 本概念和重点内容.
考试的主要题型和分数分布:
1 单项选择题(20小题,每题2分,共40分) 2 填空题(每空1分,共30分) 3 改错和看程序写结果(共10分) 4 编写和完成程序(5小题,每题4分,共20分)
if语句
2.If语句的嵌套 在if语句中又包含一个或多个if语句称为if语句的嵌套。 形式: if() if() 语句1 else 语句2 内嵌if else if() 语句3 else 语句4
if语句
如 int a=3,b=4,c=5; if(a<b) a=b;b=c;c=a;那么a,b,c 是 4,5,4 if(a>b) a=b;b=c;c=a;那么a,b,c 是 3,5,3 第1个,因为a<b,所以a=b;b=c;c=a;都执行, 第2个,因为a不大于b,所以不执行a=b; 只执行 b=c;c=a;
自增、自减运算符 作用是使变量的值增1或减1 如: ++i,--i(在使用i之前,使i+1 或-1) i++,i--(在使用i之后,使i+1 或-1) 就是使用 i 的原值执行本条语句, 而在执行下条语句前将 i+1 或-1 int m=5,n=10; printf("%d,%d\n",m++,--n); 显示5,9 若再有: printf(“%d\n”,m); 显示6
条件运算符 •格式: •功能: 表达式1?表达式2∶表达式3 判断表达式1的值,如果成立就执行表 达式2,否则就执行表达式3
max=(a>b?a:b; min=(a<b)a:b;
if语句
例: 输入一个字符,判别它是否大写字母,如果是,将 它转换成小写字母;如果不是,不转换。然后输出最后 得到的字符。 #include <stdio.h> 如果字符变量ch的值为大写字母, void main ( ) 则条件表达式的值为(ch+3 { char ch; 2),即相应的小写字母。如果ch 的值不是大写字母,则条件表达式 scanf(“%c”,& ch); 的值为ch,即不进行转换。 ch=(‘A’<=ch&&ch<=‘Z’)?(ch+32):ch; printf(“%c\n”,ch); } //注意:不能用 ‘A’<=ch<=‘Z’,它永远为真
用do-while语句实现循环
do-while语句的特点:先执行循环体,然后判断 循环条件是否成立。 一般形式: do { 循环体语句 } while (表达式); 执行过程:先执行一次指定的循环体语句,然后判别 表达式,当表达式的值为非零(“真”) 时,返回重 新执行循环体语句,如此反复,直到表达式的值等 于0为止,此时循环结束。
注意 while(a<0||a>100);的含义和;号
用do-while语句计算 10!
i=1;s=1; do{ s=s*i;i++;}while(i<=10); 不是: i=1;s=0; do{ s=s*i;i++;}while(i<=10); 也不是: do{i=1;s=1; s=s*i;i++;}while(i<=10); do{i=1;s=0; s=s*i;i++;}while(i<=10);
赋值运算符 赋值符号“=”就是赋值运算符,它的作用是 将一个数据赋给一个变量,如a=5;(单等号) 而 a==5 是判断 a是否等于 5; (双等号) 如 int a=3; if(a==2) 为假, 而 if(a=5) 为真。
第三章
C语句概述
C程序
源程序文件1
源程序文件2
源程序文件n
预处理命令
字符型数据
字符常量 (1)用单引号包含的单个字符 (2)用单引号包含的由\开始的转义字符
‘a’,’A’, ‘1’,’\037’,’\x2d’ ‘abc’,“a”,’\082’,’\x5g’

字符串常量 • 字符串常量是一对双引号括起来的字符序列. • 合法的字符串常量: “How do you do.”, “CHINA”, “a” , “$123.45” • 可以输出一个字符串,如 printf(“How do you do.”);
优先级相同(高)
优先级相同(低)
说明: 关系运算符的优先级低于算术运算符 关系运算符的优先级高于赋值运算符
关系运算符和关系表达式
2.关系表达式 • 用关系运算符将两个表达式(可以是算术表达式或 关系表达式,逻辑表达式,赋值表达式,字符表达式) C语言中没有专用 接起来的式子,称关系表达式
的逻辑值,1代表 真,0代表(a=3)>(b=5),’a’<‘b’,(a>b)>(b<c)
数据声明
函数1
函数n
函数首部
函数体
数据声明
执行语句
C语句概述
控制语句 完成一定的控制功能
6 break 间断语句 7 switch() 开关语句 8 goto 转向语句 9 return 返回语句
1 if() ~else 条件语句 2 for()~ 循环语句 3 while()~循环语句 4 do ~while();循环语句 5 continue 继续语句
格式输入与输出
用printf 和scanf函数输出和输入数据。 #include<stdio.h> a在内存中的地 void main() 址 { &是地址运算符 int a,b,c; scanf(“%d,%d,%d”,&a,&b,&c); printf(“%d,%d,%d\n”,a,b,c); } 运行情况: 3 ,4 ,5 (输入a,b,c的值) 3 ,4 ,5 (输出a,b,c的值)

整型常量的表示方法 整型常量即整常数。在C语言中,整常数 可用以下三种形式表示: (1)十进制整数。 如:123, -456 (2)八进制整数。以0开头的数是八进制数。 如:0123表示八进制数123,等于十进制数83 0129 非法(每位0-7合法) (3)十六进制整数。以0x开头的数是16进制数。 如:0x123,代表16进制数123,等于十进制数291 而 0x12g 非法(每位0-f合法)
其中用下面的辗转相除法求出最大公约数n while(m!=0) {r=n%m; n=m; m=r;} 把它独立出来就是一个函数 int hcf(int m,int n) { int r; while(m!=0) {r=n%m; n=m; m=r;} return (n);} 用 p/n 得到最小公倍数
在格式输入与输出中
格式控制是用双引号包括的,其中一般带有 %d,%c,%f,%s等各种对数据类型的要求.
第四章
关系运算符和关系表达式
1.关系运算符及其优先次序 1. < (小于) 2. <= (小于或等于) 3. > (大于) 4. >= (大于或等于) 5. == (等于) 6. != (不等于)
格式输入与输出
(一).格式输出函数 • 函数作用:向终端(或系统隐含指定的输出设备 )输出若干个任意类型的数据。 • 一般格式:printf(格式控制,输出表列)
%d:以带符号的十进制形式输出整数 %o:以八进制无符号形式输出整数 %x:以十六进制无符号形式输出整数
格式输入与输出
%u:以无符号十进制形式输出整数 %c:以字符形式输出,只输出一个字符 %s:输出字符串 %f:以小数形式输出单,双精度数,隐含输出六位小数 %e:以指数形式输出实数 %g:选用%f或%e格式中输出宽度较短的一种格式,不输 出无意义的0
• 关系表达式的值是一个逻辑值,即“真”或“假”。 例:关系表达式”a>b”的值为“真”,表达式的值为1。
逻辑运算符和逻辑表达式
1.逻辑运算符及其优先次序 (1)&& (2)|| (3)! 优先次序: 逻辑非! 算术运算符 关系运算符 逻辑与或 赋值运算符 或运算中有1,值为1,与运算中有0,值为0 (逻辑与) (逻辑或) (逻辑非)
几个典型的判断: 判断大写字母: if(‘A’<=c && c<=‘Z’) 判断小写字母: if(‘a’<=c && c<=‘z’) 判断数字: if(‘0’<=c && c<=‘9’) 判断闰年: if((year%4==0&&year%100!=0)||year%400==0)
注意:例如在判断数字中: if(‘0’<=c && c<=‘9’) 不可以没有 && ,也不能没有 ’ ’ 即不能用 if(‘0’<= c<=‘9’) 也不能用 if( 0<=c && c<=9 ) 但可以用 if( 48<=c && c<=57 ) (想想为什么? )
例如:为了保证输入成绩的正确,可以使用语句: printf("请输入学生成绩a(0-100):"); scanf("%d",&a); while (a<0||a>100) { printf("\n 输入有误,请重输: "); scanf("%d",&a); }
相关文档
最新文档