2014考题20159月复习题(不含答案)

更新时间:2023-10-01 08:57:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C语言程序设计(上)复习题

一、单项选择题(每题2分,共40分)

1. 有变量定义int a;float c;下面输入语句不能正确赋值的是( )。

A. scanf(\ B. scanf(\C. scanf(\ D. scanf(\%d\c);

2已知 int k=1; for(k=1;1;k++) if(k) break; for语句的循环次数是( )。 A. 0 B. 1 C. 2

D. 无限次

3.表达式 !(x>0||y>0) 等价于_____。 A. !x>0||!y>0 B. !(x>0)||!(y>0) C. !x>0&&!y>0

D. !(x>0)&&!(y>0)

4.二维数组a有 M行N列,则在a[i][j]之前的元素个数为 。 A) j*M+i B) i*N+j C) i*N+j-1 D) j*M+i-1

5. 若已定义x为int类型,y为float型,则表达式:x=2,x+5,y=x+1/4的值是______。 A)2.0 B)2.25 C)7 D) 7.25

6.把字符串“China bit”输入到字符数组a中的正确操作是____。

A)scanf(“%s”,a) B)gets(a) C)scanf(“%s”,&a) D)getchar(a)

7. 为判断char型变量m是否是数字,可以使用下列表达式______进行判断。 A) 0<=m && m<=9 B) '0'<=m && m<='9'

C) \ D) A) 0<=m || m<=9

8. 有int x,y;则以下for语句: for(x=0,y=10;(y>0)&&(x<4);x++,y--); 其循环执行的次数是______。 A)无限次 B)循环次数不定 C)循环执行3次 D)循环执行4次

10.下列说法中正确的是 。 A) break 语句用在switch 语句中,而 continue 用在循环语句中 B) break 语句用在循环语句中,而 continue 用在 switch 语句中 C) break 能结束循环,而continue只能结束本次循环开始下次循环

D) continue 能结束循环,而 break 只能结束本次循环

11.以下标识符中,可以作为合法的C用户定义标识符的是()。 A: 6answer B: b/et

C: unsigned D: _if

12.下面有关for 循环的正确描述是()。 A: for 循环必须用于循环次数已经确定的情况 B: for 循环是先执行循环体语句,后判断表达式 C: for 循环中,不能用break 语句跳出循环体

D: for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

13 下列定义数组的语句中正确的是()。 A: #define size 10

char str1[size],str2[size+2]; B: char str[]; C: int num['10'];

D: int n=5; int a[n][n+2];

14.C 语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符()。 A: 必须为字母 B: 必须为下划线

C: 必须为字母或下划线

D: 可以是字母,数字和下划线中任一字符

15.温度华氏和摄氏的关系是: C=5/9×(℉-32)。已知:float C,F;由华氏求摄氏的正确的

赋值表达式是____。

A) C=5/9(F-32) B) C=5*(F-32)/9 C) C=5/9*(F-32) D) 三个表达式都正确

16已知 int a[3][2]={3,2,1};则表达式“a[0][0]/a[0][1]/a[0][2]”的值是____。

A) 0.166667 B) 1 C) 0 D) 错误的表达式

17.对于强制类型转换,正确的说法是____。

A) 对于进行强制类型转换的变量,按照转换后的类型进行保存 B) 对于进行强制类型转换的变量,变量本身的数据类型不变

C) 对于进行强制类型转换的变量,变量本身的数据类型和运算时的类型都改变 D) 对于进行强制类型转换的变量,变量本身的数据类型和运算时的类型都不改变

18.使用语句scanf(”x=%f,y=%f”,&x,&y);输入变量x、y的值(□代表空格),正确的输入是

____。

A) 1.25,2.4 B) 1.25□2.4 C) x=1.25,y=2.4 D) x=1.25□y=2.4

19.求取满足式 12+22+32+ …… +n2 ≤1000的n,正确的语句是____。 A) for(i=1,s=0;(s=s+i*i)<=1000;n=i++); B) for(i=1,s=0;(s=s+i*i)<=1000;n=++i);

C) for(i=1,s=0;(s=s+++i*i)<=1000;n=i); D) for(i=1,s=0;(s=s+i*i++)<=1000;n=i);

20.错误的转义字符是____。

A) ’\\\\’ B) ’\\’’ C) ’\\81’ D) ’\\0’

二、程序题(每题20分,共60分) 【程序题1】打印图形题

输入顶行字符和图形的高。输出如下例(顶行字符为'A',图形的高为5)所示的图形, A BCD EFGHI JKLMNOP QRSTUVWXY 测试用例: 输入: A5 输出: A BCD EFGHI JKLMNOP QRSTUVWXY

【程序题2】“粘贴”字符串

编程,输入两个字符串s1、s2和s1中任意字符k,在s1中的指定字符k的位置处插入字符串s2并输出。

例如S1=“abcde”,S2=“12345”,输入b,则输出“ab12345cde”,

若输入的字符不在s1中,则在s1的结尾处插入s2。例如S1=\输入字符k,则输出“abcde12345”. 测试用例: 输入: abcde 12345 b

输出: ab12345cde

【程序题3】寻找鞍点

编程,找出一个二维数组中的鞍点,即该位置上的元素是该行上的最大值,是该列上的最小值。二维数组也可能没有鞍点。

测试用例: 输入 3 4 1 3 5 3 2 3 4 1 3 2 6 7 输出

Point:a[1][2]==4

本文来源:https://www.bwwdw.com/article/r4vd.html

Top