南阳理工学院
2017级清考2
课程:算法设计与分析(专升本)总时长:120分钟
窗体顶端
1.  (单选题) 下面程序段的运行结果是( )。 int n=0; while (n++<=2); printf(“%d”,n);(本题2.5分)
 A、  2 
 B、  3 
 C、  4 
 D、  有语法错误 
学生答案: A
标准答案:C
解析:
得分: 0
2.  (单选题) 若i为整型变量,则以下循环执行次数是 ( )。 for(i=2;i= =0) printf(“%d”,i- -);(本题2.5分)
 A、  无限次 
 B、  0次 
 C、  1次 
 D、  2次 
学生答案: B
标准答案:B
解析:
得分: 2.5
3.  (单选题) 对下述程序段描述正确的是( )。 int k=0: while (k=1)k++;(本题2.5分)
 A、  有语法错误,不能执行 
 B、  循环是无限循环 
 C、  循环体语句一次也不执行 
 D、  程序体语句执行一次 
学生答案: A
标准答案:B
解析:
得分: 0
4.  (单选题) 下面有关for循环的正确描述是( )。(本题2.5分)
 A、  for循环只能用于循环次已经确定的情况 
 B、  for循环是先执行循环体语句,后判断表达式 
 C、  在for循环中,不能用break语句跳出循环体 
 D、  for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 
学生答案: D
标准答案:D
解析:
得分: 2.5
5.  (单选题) C语言中while和do-while循环的主要区别是( )。(本题2.5分)
 A、  do-while的循环至少无条件执行一次 
 B、  while的循环控制条件比do-while循环控制条件更严格 
 C、  do-while允许从外部到循环体内 
 D、  do-while的循环体不能是复合语句 
学生答案: A
标准答案:A
解析:
得分: 2.5
关于printf函数正确的是
6.  (单选题) 下面程序段的描述,正确的是( )。 x=-1; do {x=x*x;}while(!x);(本题2.5分)
 A、  是死循环 
 B、  循环执行两次 
 C、  循环执行一次 
 D、  有语法错误 
学生答案: C
标准答案:C
解析:
得分: 2.5
7.  (单选题) 下面程序运行的结果是( )。 #include main() {int y=10; do{y--;}while(--y); printf(“%d\n”,y--);}(本题2.5分)
 A、  -1 
 B、  2 
 C、  8 
 D、  0 
学生答案: D
标准答案:D
解析:
得分: 2.5
8.  (单选题) 下面函数的功能是( )。 char *fun(char *str1,char *str2) { while((*str1)&&(*str2++=str1++)); return str2; }(本题2.5分)
 A、  求字符串的长度 
 B、  比较两个字符串的大小 
 C、  将字符串str1复制到字符串str2中 
 D、  将字符串str1接续到字符串str2中 
学生答案: C
标准答案:C
解析:
得分: 2.5
9.  (单选题) 下面程序段的运行结果是( )。 char *p=”abcdefgh”; p+=3; printf(“%d\n”,strlen(strcpy(p,”ABCD”)));(本题2.5分)
 A、  8 
 B、  12 
 C、  4 
 D、  7 
学生答案: C
标准答案:C
解析:
得分: 2.5
10.  (单选题) 有以下程序 main() { char a,b,c,*d; a=‘\’; b=‘\xbc’; c=‘\0xab’; d=“\0127”; printf(“%c%c%c%c\n”,a,b,c,*d); } 编译时出现错误,以下叙述中正确的是( )。(本题2.5分)
 A、  程序中只有a=‘\’;语句不正确 
 B、  b=‘\xbc’;语句不正确 
 C、  d=“\0127”;语句不正确 
 D、  a='\';和 c='\0xab';语句都不正确