




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基础知识 数据类型 输入输出 表达式 基础知识 数据类型 输入输出 表达式 1 1 程序结构是三种程序结构是三种 顺序结构顺序结构 选择结构选择结构 分支结构分支结构 循环结构循环结构 2 2 读程序都要从读程序都要从 main main 入口入口 然后从最上面顺序往下读然后从最上面顺序往下读 碰到循环做循环碰到循环做循环 碰到选择碰到选择 做选择做选择 有且只有有且只有一个一个 mainmain 函数函数 3 3 计算机的数据在电脑中保存是以计算机的数据在电脑中保存是以 二进制二进制的形式的形式 数据存放的位置就是数据存放的位置就是 他的地址他的地址 3 3 每个 每个 C C 语言程序中语言程序中 mainmain 函数函数是是有且只有一个有且只有一个 5 5 算法 算法 可以没有可以没有输入输入 但是 但是一定要有一定要有输出输出 7 7 逗号运算符逗号运算符的级别的级别最低最低 赋值赋值的级别的级别倒数第二倒数第二 1 C 语言编写的程序称为源程序 又称为编译单位 2 C 语言书写格式是自由的 每行可以写多个语句 可以写多行 3 一个 C 语言程序有且只有一个 main 函数 是程序运行的起点 常量 数字常量 普通数字 1 35 2 7 指数形式 2 45e 2 等价于 2 45 10 2 注意e大小写皆可 e前面的数字不能省 就算是1 也不能省 后面的数字一定要是整数 长整型 单精度浮点型 3235L 32 5F 分别表示 3235 是长整型数据 32 5 是单精度浮点 型左 若不写上 L F 则表示 3235 是整型 32 5 是双精度浮点型 L F 大小写皆可 字符常量 普通字符常量 用单引号把一个字符括起来 如 A 转义字符常量 一对单引号括起来并以 开头的字符序列 如 n 回车 123 8 进制 123 对应的字符 x23 16 进制 23 对应的字符 字符串常量 用一对双引号把一个字符序列括起来 如 ABCef 系统存放字符串常量 每个字符分配 一个字节 各字符所占字节紧邻 并且字符串末尾会给再开一个字节里面放一个 0 做为结 束标志 符号常量 定义格式 define 符号常量名 符号常量值 如 define N 20 则定义了符号常量 N 其值为 20 注意符号常量名和符号常量值之间是用空格隔开 而不是写上 号 define和符号常 量名之间也有空格的 命名规则 以数字 字母 下划线这三类字符组成 但只能以字母或下划线开头 而不能也数字开头 另外不能将关键字做为标识符 1 标识符 标识符 合法的要求是由合法的要求是由字母字母 数字数字 下划线下划线组成 有其它元素就错了 组成 有其它元素就错了 并且并且第一个必须为第一个必须为字母字母或则是或则是下划线下划线 第一个为数字就错了 第一个为数字就错了 2 标识符分为关键字 预定义标识符 用户标识符 标识符分为关键字 预定义标识符 用户标识符 关键字 关键字 不可以不可以作为用户标识符号作为用户标识符号 mainmain definedefine scanfscanf printfprintf 都不是关键字都不是关键字 迷惑你的地方迷惑你的地方 IfIf 是可以做为用户标识符是可以做为用户标识符 因为 因为 IfIf 中的第一个字母大写了 所以不是关键中的第一个字母大写了 所以不是关键 字 字 预定义标识符 背诵预定义标识符 背诵 definedefine scanfscanf printfprintf includeinclude 记住 记住预定义标识符预定义标识符可以可以做为用户做为用户 标识符 标识符 类型名 int 整型 long 长整型 用于存放整数 只是数值范围不同 float 单精度浮点型 double 双精度浮点型 用于存放实数 数值范围 精度不同 char 字符型 用于存放字符 1 1 C C 语言只有语言只有八 十 十六八 十 十六进制 进制 没有二进制没有二进制 但是 但是运行时候 所有的进制都要转换运行时候 所有的进制都要转换 成二进制来进行处理成二进制来进行处理 考过两次 考过两次 a a C C 语言中的语言中的八进制八进制规定要规定要以以 0 0 开头开头 018018 的数值是非法的 的数值是非法的 八进制是没有八进制是没有 8 8 的 的 逢逢 8 8 进进 1 1 b b C C 语言中的语言中的十六进制十六进制规定要规定要以以 0 x0 x 开头开头 2 2 小数的合法写法小数的合法写法 C 语言语言小数点两边有一个是零的话小数点两边有一个是零的话 可以不用写可以不用写 1 01 0 在在 C C 语言中可写成语言中可写成 1 1 0 10 1 在在 C C 语言中可以写成语言中可以写成 1 1 3 实型数据的合法形式 a a 2 333e 12 333e 1 就是合法的 且数据是就是合法的 且数据是 2 333 102 333 10 1 1 b 考试口诀 e 前前 e 后必有数 后必有数 e 后后必为必为整数整数 请结合书上的例子 请结合书上的例子 4 4 整型整型一般是一般是 4 4 个字节个字节 字符型字符型是是 1 1 个字节 个字节 双精度双精度一般是一般是 8 8 个字节 个字节 longlong intint x x 表示表示 x x 是长整型 是长整型 unsignedunsigned intint x x 表示表示 x x 是无符号整型 是无符号整型 变量赋值 初始化 自增自减运算 变量 变量 变量 变量 使变量的值自增 1 或自减 1 等价于 变量 变量 1 变量 变量 1 放于变量前后效果的区别 当自增自减运算做为表达式的一部分时 放在变量前面是先自增自减再使用变量的 值 放在变量后面则是先使用变量的值 再自增自减 如 x 3 printf d x 则相当于执行了 x printf d x 这样的操作所以打印出 4 再如 x 3 printf d x 则相当于执行了 printf d x x 这样的操作 则打印出 3 当 然最后 x 的值还是 4 表达式 运算符和运算对象 一个运算符都有若干个运算对象 如 必然要跟两个运算对象才能进行加法运算 3 5 C 语言里称需要跟 n 个运算对象的运算符为 n 元运算符 一元运算符有 类型名 二元运算符有 求余 等于 不等于 a b 5 该表达式为该表达式为 5 5 常量不可以赋值 常量不可以赋值 1 1 intint x y 10 x y 10 错啦 错啦 定义时定义时 不可以不可以连续赋值 连续赋值 2 2 intint x y x y x y 10 x y 10 对滴 对滴 定义完成后定义完成后 可以可以连续赋值 连续赋值 3 3 赋值的左边只能是赋值的左边只能是一个变量一个变量 4 4 intint x 7 7x 7 7 对滴 对滴 x x 就是就是 7 7 5 5 floatfloat y 7y 7 对滴 对滴 x x 就是就是 7 07 0 3 3 复合的赋值表达式 复合的赋值表达式 intint a 2a 2 a 2 3a 2 3 运行完成后 运行完成后 a a 的值是的值是 1212 一定要注意 首先要在一定要注意 首先要在 2 32 3 的上面打上括号 变成 的上面打上括号 变成 2 32 3 再运算 再运算 4 4 自加表达式 自加表达式 自加 自减表达式 假设自加 自减表达式 假设 a 5a 5 a a 是为 是为 6 6 a a 为 为 5 5 运行的机理 运行的机理 a a 是先把变量的数值加上是先把变量的数值加上 1 1 然后把得到的数值放到变量 然后把得到的数值放到变量 a a 中 然后中 然后 再用这个再用这个 a a 表达式的数值为表达式的数值为 6 6 而 而 a a 是是先用该表达式的数值为先用该表达式的数值为 5 5 然后再把 然后再把 a a 的数值加的数值加 上上 1 1 为为 6 6 再放到变量再放到变量 a a 中 中 进行了进行了 a a 和和 a a 后后 在下面的程序中再用到在下面的程序中再用到 a a 的话都是变量的话都是变量 a a 中的中的 6 6 了 了 考试口诀 在前在前先加后用先加后用 在后在后先用后加先用后加 5 5 逗号表达式 逗号表达式 优先级别优先级别最低最低 表达式的数值逗号 表达式的数值逗号最右边最右边的那个表达式的数值 的那个表达式的数值 2 2 3 3 4 4 的表达式的数值就是 的表达式的数值就是 4 4 z z 2 2 3 3 4 4 整个是赋值表达式整个是赋值表达式 这个时候这个时候 z z 的值为的值为 4 4 1 1 字符数据的合法形式 字符数据的合法形式 1 1 是是字符字符占占一一个字节 个字节 1 1 是字符串占是字符串占两两个字节个字节 含有一个结束符号含有一个结束符号 0 0 的的 ASCIIASCII 数值表示为数值表示为 4848 a a 的的 ASCIIASCII 数值是数值是 9797 A A 的的 ASCIIASCII 数值是数值是 6565 一般考试表示单个字符错误的形式 一般考试表示单个字符错误的形式 65 65 1 1 字符是可以进行算术运算的 记住 字符是可以进行算术运算的 记住 0 0 48 0 0 48 大写字母和小写字母转换的方法 大写字母和小写字母转换的方法 A 32 a A 32 a 相互之间一般是相差相互之间一般是相差 3232 2 2 转义字符 转义字符 转义字符分为一般转义字符分为一般转义字符 八进制转义字符 十六进制转义字符转义字符 八进制转义字符 十六进制转义字符 一般转义字符 背诵一般转义字符 背诵 0 0 n n 八进制转义字符 八进制转义字符 141 141 是合法的 是合法的 前导的前导的 0 0 是不能写的 是不能写的 十六进制转义字符 十六进制转义字符 x6d x6d 才是合法的 前导的才是合法的 前导的 0 0 不能写 并且不能写 并且 x x 是小写是小写 3 3 字符型和整数是近亲 两个具有很大的相似之处字符型和整数是近亲 两个具有很大的相似之处 charchar a a 6565 printf c printf c a a 得到的输出结果 得到的输出结果 a a printf d printf d a a 得到的输出结果 得到的输出结果 6565 输入输出函数 scanf 格式控制串 变量地址表列 如 scanf d c d scanf 4f 注意 格式控制串可控制截取用户输入的前几个字符给变量 但不能控制输入几位小数给变量 如不能写成 scanf 4 2f 第二个参数给的是地址 即要么是 p scanf d p 考试时注意看题目给你写好的 scanf 的格式 若其格式控制串内各格式符用 隔开如 scanf d c d 那输入时也要 用逗号隔开 如此例输入时应 3 5 若是这种格式 scanf d d 则输入时应 3 5 若是这种格式 scanf d c d 则输入时应 3 5 若写成 3 5 则 a 3 ch 空格 b 任意值 自己上机运行看看结果 printf 格式控制串 输出项表列 如 float x 7 5 printf 8 2f x 此处的意思是将 x 打印出来 且占 8 列 保留两位小数 自 己上机运行看看效果 常用格式符汇总 d 输入输出整型数据 ld 输入输出长整型数据 c 输入输出字符型数据 f 输出单 双 精度浮点型数据 输入单精度型数据 lf 输入双精度型 数据 s 输入输出一个字符串 用 printf 输出字符串时 输出项书写时可为字符串常量 或字 符数组名 如 printf s hello 或 char str 10 hello printf s str u 输入输出无符号整型 o 输入输出八进制数 x 输入输出十六进制数 getchar 函数调用后返回用户输入的一个字符 故需再定义一个变量来存放这个字符 即使用时应 char c c getchar 意思就是接收用户输入的一个字符 并将其赋值给变量 c putchar 字符常量或字符变量名 如 char c A putchar c 或 putchar A 都会向屏幕输出字符 A 1 1 使用 使用 printfprintf 和和 scanfscanf 函数时 要在最前面加上函数时 要在最前面加上 include stdio h include stdio h 2 2 printprintf f 可以只有一个可以只有一个参数 参数 也可以有两个也可以有两个参数 参数 选择题考过一次 选择题考过一次 3 3 printfprintf 第一部分第一部分 第二部分 第二部分 把第二部分的变量 表达式 常量以第一 把第二部分的变量 表达式 常量以第一 部分的形式展现出来 部分的形式展现出来 4 4 printfprintf a d a d b d b d 12 12 3434 printfprintf a d a d n n b d b d 12 12 3434 那么输出的结果就是 那么输出的结果就是 a 12a 12 b 34b 34 5 5 intint x 017x 017 一定要弄清楚为什么是这个结果 过程很重要一定要弄清楚为什么是这个结果 过程很重要 printfprintf d d x x 1515 printfprintf o o x x 1717 printfprintf o o x x 017017 printfprintf x x x x 1111 printfprintf x x x x 0 x110 x11 6 6 intint x 12x 12 y 34y 34 注意这种题型注意这种题型 charchar z a z a printfprintf d d x x y y 一个格式说明 两个输出变量 后面的一个格式说明 两个输出变量 后面的 y y 不输出不输出 printfprintf c c z z 结果为 结果为 12a12a 7 7 一定要背诵的 一定要背诵的 格式说明格式说明表示内容表示内容格式说明格式说明表示内容表示内容 d d 整型整型 intint c c 字符字符 charchar ld ld 长整型长整型 longlong intint s s 字符串字符串 f f 浮点型浮点型 floatfloat o o 八进制八进制 lf lfdoubledouble o o 带前导的八进制带前导的八进制 输出一个百分号输出一个百分号 x x 十六进制十六进制 5d 5d x x 带前导的十六进制带前导的十六进制 举例说明 举例说明 printfprintf 2d 2d 123123 第二部分有三位 大于指定的两位 原样输出第二部分有三位 大于指定的两位 原样输出 123123 printfprintf 5d 5d 123123 第二部分有三位 小于指定的五位 左边补两个空格第二部分有三位 小于指定的五位 左边补两个空格 123123 printfprintf 10f 10f 1 251 25 小数要求补足小数要求补足 6 6 位的 没有六位的补位的 没有六位的补 0 0 结果为 结果为 1 2500001 250000 printfprintf 5 3f 5 3f 125125 小数三位 整个五位 结果为小数三位 整个五位 结果为 1 2501 250 小数点算一位 小数点算一位 printfprintf 3 1f 3 1f 1 251 25 小数一位 整个三位 结果为 小数一位 整个三位 结果为 1 31 3 要进行四舍五入 要进行四舍五入 第三节第三节 数据输入数据输入 1 1 scanfscanf a a d d b b d d scanf d d d d 跳过输入的第三个数据 跳过输入的第三个数据 2 2 putcharputchar getchar getchar 函数的考查 函数的考查 charchar a a getchar getchar 是没有参数的 从键盘得到你输入的一个字符给变量是没有参数的 从键盘得到你输入的一个字符给变量 a a putchar y putchar y 把字符把字符 y y 输出到屏幕中 输出到屏幕中 1 以下不是 C 语言的特点的是 A 语言简洁紧凑 B 能够编制出功能复杂的程序 C C 语言可以直接对硬件操作 D C 语言移植性好 2 下列字符序列中 不可用作 C 语言标识符的是 A abc123 B no 1 C 123 D ok 5 下列符号中 不属于转义字符的是 A B 0 xAA C t D 0 6 不属于 C 语言关键字的是 A int B break C while D character 7 是 C 语言提供的合法关键字的是 A Float B signed C integer D Char 8 以下不能定义为用户标示符的是 A scanf B Void C 3com D int 9 一个 C 程序是由 A 一个主程序和若干子程序组成 B 一个或多个函数组成 C 若干过程组成 D 若干子程序组成 10 C 语言程序的基本单位是 A 程序行 B 语句 C 函数 D 字符 12 以下说法中正确的是 A C 语言程序总是从第一个定义的函数开始执行 B 在 C 语言程序中 要调用的函数必须在 main 函数中定义 C C 语言程序总是从 main 函数开始执行 D C 语言程序中的 main 函数必须放在程序的开始部分 13 C 编译程序是 A C 程序的机器语言版本 B 一组机器语言指令 C 将 C 源程序编译成目标程序 D 由制造厂家提供的一套应用软件 14 以下选项中 合法的用户标识符是 A long B 2abc C 3dmax D A dat 15 以下选项中 合法的实型常数是 A 5E2 0 B E 3 C 2E0 D 1 3E 16 已知大写字母 A 的 ASCII 码值是 65 小写字母 a 的 ASCII 码是 97 则用八进制表示的 字符常量 101 是 A 字符 A B 字符 a C 字符 c D 非法的常量 21 与数学式子对应的 C 语言表达式是 12 9 x xn A 9 x n 2 x 1 B 9 x n 2 x 1 C 9 pow x n 1 2 x 1 D 9 pow n x 2 x 1 26 在 C 语言中 要求运算数必须是整型的运算符是 A B C D 27 若有说明语句 char s 72 则变量 s A 包含一个字符 B 包含两个字符 C 包含三个字符 D 说明不合法 s 的值不确定 28 若有定义 int m 7 float x 2 5 y 4 7 则表达式 x m 3 int x y 2 4 的值是 A 2 500000 B 2 750000 C 3 500000 D 0 000000 29 在 C 语言中 char 型数据在内存中的存储形式是 A 补码 B 反码 C 原码 D ASCII 码 39 putchar 函数可以向终端输出一个 A 整型变量表达式值 B 字符串 C 实型变量值 D 字符或字符型变量值 40 以下程序段的输出结果是 int a 12345 printf 2d n a A 12 B 34 C 12345 D 提示出错 无结果 41 若 x 和 y 均定义为 int 型 z 定义为 double 型 以下不合法的 scanf 函数调用语句 为 A scanf d lx le B scanf 2d d lf C scanf x d o D scanf x o 6 2f 45 已有定义 int a 2 和输出语句 printf 8lx a 以下正确的叙述是 A 整型变量的输出格式符只有 d 一种 B x 是格式符的一种 它可以适用于任何一种类型的数据 C x 是格式符 D 8lx 不是错误的格式符 其中数字 8 规定了输出字段的宽度 52 以下程序的输出结果是 注 代表空格 include stdio h main printf nstring1 15s programming printf nstring2 5s boy printf string3 2s girl A string1 programming B string1 programming string2 boy string2 boy string3 gi string3 gi C string1 programming D string1 programming string2 boy string3 girl string2 boy string3 girl 2 结构化设计中的三种基本结构是 3 C 语言源程序文件的后缀是 经过编译后生成文件的后缀是 经过 链接后生成文件的后缀是 5 一个函数由两部分组成 它们是 6 函数体一般包括 7 C 语言是通过 来进行输入和输出的 8 以下程序的执行结果 include stdio h main short i 1 j 1 printf dec d oct o hex x unsigned u n i i i i printf dec d oct o hex x unsigned u n j j j j 7 a 12 n 5 表达式 a n 2 值是 8 有一个输入函数 scanf d k 则不能使 float 类型变量 k 得到正确数值的原因是 和 9 putchar 函数可以向终端输出一个 10 已有定义 int i j float x 为将 10 赋给 i 12 赋给 j 410 34 赋给 x 则对应以下 scanf 函数调用语句的数据输入形式是 scanf o x e 11 pirntf 函数中用到格式符 5s 其中数字 5 表示输出的字符串占 5 列 如果字符串长度 大于 5 则 12 使用 getchar 和 putchar 函数必须在源程序中加 9 写出下面程序的运行结果 main int i j m n i 5 j 6 m i n j printf d d d d i j m n 5 在 C 语言中 书写八进制数时必须加前缀 书写十六进制数时必须加前缀 6 在微机上 int 型 short 型 long 型 float 型和 double 型数据一般在内存中分别占 字节 字节 字节 字节和 字节 7 设有下列运算符 其中优先级最高的是 优先级最低的是 选择结构选择结构 C 语言的语句 表达式语句 由表达式末尾加上分号构成 函数调用语句 由函数调用表达式加上分号构成 空语句 选择结构语句 if 语句 switch 语句 循环语句 for 语句 while 语句 do while 语句 复合语句 用花括号 将以上任意语句括起来构成一条复合语句 C 程序的基本结构 void main 声明部分 用来定义变量和声明自定义函数的原型 需以 结尾 如 int x 执行语句部分 第六点里介绍的各种语句 如 x 3 printf d x C 语言中是用语言中是用非非 0 表示逻辑真的 表示逻辑真的 用用 0 表示逻辑假的 表示逻辑假的 C 语言语言有有构造类型构造类型 没有没有逻辑类型逻辑类型 关系运算符号 注意关系运算符号 注意89 8 这个关系表达式是真的 所以这个关系表达式是真的 所以 9 89 8 这个表达式的数值就是这个表达式的数值就是 1 1 如如 7 67 6 这个关系表达式是假的 所以这个关系表达式是假的 所以 7 67a b b t t a a b b t ifif a ba b t a a b b t t a a b b t 两个的区别 考试多次考到了 两个的区别 考试多次考到了 d d 单独的 单独的 ifif 语句 语句 ifif a ba b t at a 标准的标准的 ifif 语句 语句 ifif a ba b min amin a elseelse min bmin b 嵌套的嵌套的 ifif 语句 语句 ifif a bacb c printf ok printf ok 多选一的多选一的 ifif 语句语句 ifif a a t t printf a printf a elseelse ifif b b t t printf b printf b elseelse ifif c c t t printf c printf c elseelse pritnf d pritnf d 通过习题 要熟悉以上几种通过习题 要熟悉以上几种 ifif 语句 语句 经典考题 结合上面四种经典考题 结合上面四种 if 语句题型做题 答错了 请自行了断 预备 开始 语句题型做题 答错了 请自行了断 预备 开始 intint a 1a 1 b 0b 0 ifif a a b b elseelse ifif a a 0 0 ifif a a b 2b 2 elseelse b 3b 3 请问 请问 b b 的值是多少 的值是多少 如果没有看懂题目 你千万不要自行了断 这样看得懂不会做的人才会有理由的活如果没有看懂题目 你千万不要自行了断 这样看得懂不会做的人才会有理由的活 着 着 正确的是正确的是 b b 为为 3 3 intint a 1a 1 b 0b 0 ifif a a b b 是假的不执行是假的不执行 elseelse ifif a a 0 0 是假的执行是假的执行 ifif a a b 2b 2 属于属于 elseelse ifif 的嵌套的嵌套 ifif 语句 不执行 语句 不执行 elseelse b 3b 3 if else ifif else if 语句没有一个正确的 就执行语句没有一个正确的 就执行 elseelse 的语句 的语句 4 条件表达式 条件表达式 表达式表达式 1 1 表达式 表达式 2 2 表达式 表达式 3 3 a 考试口诀 真前假后真前假后 b b 注意是当表达式注意是当表达式 1 1 的数值是的数值是非非 0 时 才采用表达式时 才采用表达式 2 2 的数值做为整个运算结果 当的数值做为整个运算结果 当 表达式表达式 1 1 的数值的数值为为 0 时 时 就用表达式就用表达式 3 3 的数值做为整个的结果 的数值做为整个的结果 c c intint a 1a 1 b 2b 2 c 3c 3 d 4d 4 e 5e 5 k a bk a b c c d ed e d d e e 求求 k k 的数值时多少 的数值时多少 答案为答案为 sansan 5 switch 语句 语句 a a 执行的流程一定要弄懂 上课时候详细的过程讲了 请自己一定弄懂执行的流程一定要弄懂 上课时候详细的过程讲了 请自己一定弄懂 b b 注意有 注意有 breakbreak 和没有和没有 breakbreak 的差别 的差别 没有没有 breakbreak 时候 只要有一个时候 只要有一个 casecase 匹配了 剩下匹配了 剩下 的都要执行的都要执行 有有 breakbreak 则是直接跳出了则是直接跳出了 switchswitch 语句语句 c c switchswitch 只可以和只可以和 breakbreak 一起用一起用 不可以和 不可以和 continuecontinue 用 用 d d switch x switch x x x 是整型常量 字符型常量 枚举型数据 是整型常量 字符型常量 枚举型数据 case case 1 1 不可以是变量 不可以是变量 casecase 2 2 if 语句的三种结构 单边 if 表达式 语句 双边 if 表达式 语句 1 else 语句 2 多层 重点掌握 if 表达式 1 语句 1 else if 表达式 2 语句 2 else if 表达式 3 语句 3 else 语句 n switch 语句 switch 表达式 case 表达式 1 语句 case 表达式 2 语句 case 表达式 n 语句 default 语句 2 设 a 5 b 6 c 7 d 8 m 2 n 2 则执行 m a b case B printf 60 84 n case C printf 60 n default printf grade is error n B switch grade case A printf 85 100 n break case B printf 60 84 n case C printf 60 n default printf grade is error n C switch grade case A printf 85 100 n break case B printf 60 84 n break case C printf 60 n default printf grade is error n D switch grade case C printf 60 n break case B printf 60 84 n break default printf grade is error n break case A printf 85 100 n 26 有如下程序 写出该执行结果 include stdio h main float x 2 0 y if x 0 0 y 0 0 else if x50 printf d a if a 40 printf d a if a 30 printf d a 2 设 int x 9 y 8 表达式 x y 1 的结果是 3 定义 int x y 执行 y x 1 x x 2 后 y 的值是 7 以下程序的运行结果是 include stdio h main int a b c s w t s w t 0 a 1 b 3 c 3 if c 0 s a b if a0 if c0 w a b else t c printf d d d s w t 10 下面程序根据以下函数关系 对输入的每个 x 值 计算出 y 值 请在 内填空 xy 2 x 10 x x 2 1 x 21 x x 1x 1 include stdio h main int x y scanf d if 1 y x x 2 else if 2 y 1 x else if x a printf min d n min 20 以下程序完成两个数的四则运算 请在 内填入正确内容 include stdio h main float x y char operator printf please input the expression scanf f c f switch 1 case printf g c g g n x operator y x y 2 case printf g c g g n x operator y x y break case printf g c g g n x operator y x y break case if y 0 0 printf 除零错误 n else printf g c g g n x operator y x y break 3 printf 表达式存在错误 n 20 以下程序的运行结果是 main int m 5 if m 5 printf d n m else printf d n m A 4 B 5 6 D 7 7 以下程序的输出结果是 main int x 1 i 1 for x 10 break if x 2 1 x 3 continue x 1 printf x d i d n x i 循环控制循环控制 for 循环语句 for 表达式 1 表达式 2 表达式 3 循环体语句 语句执行过程 计算表达式 1 判断表达式 2 的值是否为 0 若为 0 语句执行结束 若不为 0 进入步骤 3 while 表达式 循环体语句 执行过程 判断表达式的值是否为非 0 若是进入步骤 2 否则结束语句执行 执行循环体语句 重新回到步骤 1 do 循环体语句 while 表达式 执行过程 执行循环体语句 进入步骤 2 判断表达式的值是否为非 0 若是重新回到步骤 1 否则结束语句执行 1 三种循环结构 三种循环结构 a a forfor while while do do while while 三种 三种 b b forfor 循环当中循环当中必须必须是是两个分号两个分号 千万不要忘记 千万不要忘记 c c 写程序的时候一定要注意 循环一定要有结束的条件 否则成了死循环 写程序的时候一定要注意 循环一定要有结束的条件 否则成了死循环 d d do while do while 循环的最后一个循环的最后一个 while while 的分号一定不能够丢 的分号一定不能够丢 当心上机改错 当心上机改错 dodo whilewhile 循环是至少执行一次循环 循环是至少执行一次循环 2 break 和 continue 的差别 记忆方法 记忆方法 breakbreak 是 是打破打破的意思 的意思 破了整个循环 所以 破了整个循环 所以看见看见 breakbreak 就退出整个一层循环就退出整个一层循环 continuecontinue 是是继续继续的意思 的意思 继续循环运算 继续循环运算 但是 但是要要结束本次循环结束本次循环 就是循环体内剩 就是循环体内剩 下的语句不再执行 跳到循环开始 然后判断循环条件 下的语句不再执行 跳到循环开始 然后判断循环条件 进行新一轮的循环进行新一轮的循环 3 嵌套循环 就是有循环里面还有循环 这种比较复杂 要一层一层一步一步耐心的计算 一般记住就是有循环里面还有循环 这种比较复杂 要一层一层一步一步耐心的计算 一般记住 两层是处理二维数组的 两层是处理二维数组的 4 while c getchar n 和和 while c getchar n 的差别 的差别 先看先看 a a 3 3 2 2 和和 a 3a 3 2 2 的区别 的区别 号的级别高于号的级别高于 号号 所以第一个先计算所以第一个先计算 3 3 2 2 第一个第一个 a a 的数值是得到的的数值是得到的 1 1 第 第 二个二个 a a 的数值是的数值是 3 3 考试注意点考试注意点 括号在这里的重要性 括号在这里的重要性 5 每行输出五个的写法 每行输出五个的写法 forfor i 0i 0 i 100i 100 i i printfprintf d d i i if if i 1 5 0 printf n i 1 5 0 printf n 如果如果 i i 是从是从 1 1 开始的话 就是开始的话 就是 if i 5 0 if i 5 0 printf n printf n 6 如何整除一个数 如何整除一个数 i 5 0i 5 0 表示整除表示整除 5 5 I 2 0I 2 0 表示整除表示整除 2 2 同时表示是偶数 同时表示是偶数 8 for 只管后面只管后面一个一个语句语句 intint i 3i 3 forfor i 3i 3 i 6 i i 6 i printf printf 请问最终打印几个请问最终打印几个 号 答案为一个 号 答案为一个 9 不停的输入 直到输入 不停的输入 直到输入 停止输入 停止输入 while while x getchar x getchar 3 当执行以下程序段时 x 1 do x x x while x A 循环体将执行一次 B 循环体将执行两次 C 循环体将执行无数多次 D 系统将提示有语法错误 4 执行以下程序后输出的结果是 main int y 10 do y while y printf d n y A 1 B 1 C 8 D 0 5 下面程序的输出结果是 main int x 3 y 6 a 0 while x y 1 a 1 if y x break printf x d y d a d n x y a A x 4 y 4 a 1 B x 5 y 5 a 1 C x 5 y 4 a 3 D x 5 y 4 a 1 6 若 i j 已定义为 int 类型 则以下程序段中内循环的总的执行次数是 for i 5 i i for j 0 j100 break B for C int k 1000 do k while k 10000 D int s 36 while s s 12 若输入 B 以下程序的运行结果为 main char grade scanf c switch grade case A printf 85 case B case C printf 60 case D printf 85 B 60 C 60 60 error D error 30 下列程序段的输出结果为 main int x 3 do printf 3d x 2 while x A 1 B 3 0 C 1 2 D 死循环 2 若输入字母 C 程序输出结果为 1 若输入字符 程序将 2 include main char c1 c2 c1 getchar while c1122 c1 getchar c2 c1 32 printf c c n c1 c2 6 以下程序运行的结果 main int x 2 y z x 3 1 printf d x x y z 5 printf d x x y z printf d n x 7 以下程序运行的结果 include include main int i k m n 0 for m 1 m 10 m 2 if n 10 0 printf n k sqrt m for i 2 ik printf 2d m n 8 如果输入 1 2 3 4 程序运行输出的是 include main char c int i k k 0 for i 0 i 0 k k 10 c 0 printf k d n k 9 运行以下程序后 如果从键盘上输入 china 则输出结果为 include main int v1 0 v2 0 char ch while ch getchar switch ch case a case h default v1 case 0 v2 printf d d n v1 v2 10 程序运行结果是 include main int i for i 1 i 1 i if i 4 printf d t i break printf d t i 11 以下程序运行的结果是 include main int a b for a 1 b 1 a 20 break if b 3 1 b 3 continue b 5 printf d n a 13 程序运行的结果是 main int n 0 while n 1 printf d t n printf d n n 14 此程序运行时 输入 qwert 程序的运行结果是 include main char c while c getchar putchar c 18 鸡问题 100 元钱买 100 只鸡 公鸡一只 5 元钱 母鸡一只 3 元钱 小鸡一元钱三只 求 100 元钱能买公鸡 母鸡 小鸡各多少只 include main int cocks hens chicks cocks 0 while cocks 19 hens 0 while hens 33 chicks 100 0 cocks hens if 5 0 cocks 3 0 hens chicks 3 0 100 0 printf d d d n cocks hens chicks 1 2 20 下列程序计算平均成绩并统计 90 分及以上人数 main int n m float grade average average n m 1 while 2 scanf f if grade 0 break n average grade if grade 90 3 m if n printf 2f d n average n m 21 下列程序计算 Fibonacci 数列 1 1 2 3 5 8 13 的前 40 项 main int I long f1 f2 1 for I 0 I 20 I printf 12ld 12ld f1 f2 if I 2 printf n f1 f2 2 22 下列程序判断一个数是否为素数 include include main int I k m scanf d k sqrt 1 for I 2 I k I if m I 0 2 if 3 printf dyes n m else printf dno n m 24 从键盘上输入两个整数 m 和 n 求其最大公约数 main int a b num1 num2 temp scanf d d if 1 temp num1 num1 num2 num2 temp a num1 b num2 while b 0 temp 2 a b b temp printf d d a num1 num2 a 11 以下程序的输出结果是 main int i j for i 0 i 5 i for j 1 j 10 j if j 6 break if i3 break printf i d j d n i j 15 以下程序段中内嵌循环共被执行的次数为 for i 5 i i for j 0 j 第一行第一行 a 1 a 1 4 4 5 5 6 6 第二行第二行 a 2 a 2 7 7 8 8 9 9 第三行第三行 步骤二 这样作题目间很简单 步骤二 这样作题目间很简单 a 0 1 a 0 1 我们就知道是第一行的第一个元素往后面跳一列 那么这里就是我们就知道是第一行的第一个元素往后面跳一列 那么这里就是 a 0 1 a 0 1 元元 素 所以是 素 所以是 a 1 2 a 1 2 我们就知道是第二行的第一个元素往后面跳二列 那么这里就是我们就知道是第二行的第一个元素往后面跳二列 那么这里就是 a 1 2 a 1 2 元元 素 所以是素 所以是 6 6 一定记住 只要是二维数组的题目 一定是写成如上的格式 再去做题目 这样会比较简一定记住 只要是二维数组的题目 一定是写成如上的格式 再去做题目 这样会比较简 单 单 3 3 数组的初始化 一维和二维的 一维可以不写 二维第二个一定要写数组的初始化 一维和二维的 一维可以不写 二维第二个一定要写 intint a 1a 1 2 2 合法 合法 intint a 4 2a 4 2 3 3 4 4 合法 合法 但但 intint a 4 a 4 2 2 3 3 4 4 非法 非法 4 4 二维数组中的行指针二维数组中的行指针 intint a 1 2 a 1 2 其中其中 a a 现在就是一个行指针 现在就是一个行指针 a 1a 1 跳一行数组元素 跳一行数组元素 搭配 搭配 p 2 p 2 指针指针 a 0 a 0 a 1 a 1 现在就是一个列指针 现在就是一个列指针 a 0 1a 0 1 跳一个数组元素 跳一个数组元素 搭配搭配 p 2 p 2 指针数组使指针数组使 用用 5 5 还有记住 还有记住 a 2 a 2 变成变成 a 2a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省杭州市萧山区城厢片2026届八年级物理第一学期期末联考模拟试题含解析
- 2026届福建省漳州市云霄县物理八年级第一学期期末达标测试试题含解析
- 2026届江苏省南京市南京航天大附属初级中学八年级物理第一学期期末检测试题含解析
- 2026届广西北海市、南宁市、钦州市、防城港市物理八上期末联考试题含解析
- 2026届湖北省黄石市物理八年级第一学期期末检测试题含解析
- 2026届北京市海淀区中学关村中学物理八年级第一学期期末学业水平测试模拟试题含解析
- 疫苗专送配送冷链物流成本2025中小企业疫苗配送冷链物流成本控制策略报告
- 2026届陕西省渭南市临渭区物理八年级第一学期期末教学质量检测试题含解析
- 物流无人机2025年行业应用场景拓展与创新报告
- 疫苗特快送冷链物流企业成本控制策略报告
- 2025至2030中国少儿英语培训行业发展趋势分析与未来投资战略咨询研究报告
- 浙江省委党校考试试题及答案
- CJ/T 391-2012生活垃圾收集站压缩机
- 肛肠疾病中医药与西医手术治疗的结合应用
- 中国卒中学会急性缺血性卒中再灌注治疗指南(2024)解读
- 医院电梯安全保障及维保方案
- 2025-2030妇幼保健产业规划专项研究报告
- 2025年江西省安福县事业单位公开招聘辅警36名笔试题带答案
- 《物流基础》完整课件(共三个项目)
- 证件借用免责协议书范本
- 2025年人教版小学数学二年级上册学期教学计划
评论
0/150
提交评论