早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->软考中级 -->

下面的C程序代码段在运行中会出现______错误。int i=0;while(i<10);{i=i+1;}A.语法B.类型不匹配C.

题目

下面的C程序代码段在运行中会出现______错误。 int i=0; while(i<10); {i=i+1;}

A.语法

B.类型不匹配

C.变量定义

D.动态语义

参考答案
正确答案:D
解析:这道题实际上是考while的循环体和空语句。若while的循环体只有一条语句,则可以不用花括号括起来,如果有多条就要用花括号括起来,表示这几条语句合起来是while的循环体。空语句指的是只有一个分号的语句“;”,该语句什么事都不做。程序语言中的错误一般分为语法错误、逻辑错误。语法错误指的是语句违反了形式规定而造成的错误,在这种情况下,不能通过编译而运行,编译器一般会给出错误信息并指出错误所在的行;逻辑错误指的是程序含义上的错误,出现了逻辑混乱。逻辑错误经常在运行中才体现出来,称为动态语义错误。从题中“while(i10);”可看出,while用一条空语句做循环体,没有循环终止条件,因此进入死循环,这是一种运行中出现的逻辑错误,为动态语义错误。题中将赋值语句“i=i+1;”用花括号括起来,引诱考生误将“{i=i+1;)”看成while的循环体,这其实是“烟幕弹”。