全部来自 AI 原创生成并经逐题审校的题目,带 精品 标记的为 AI 复审通过。整卷生成请去组卷。
判断:设有程序段 int a; char ch; scanf("%d", &a); scanf("%c", &ch); 若从键盘输入 36 后按回车,则 ch 读到的是残留的换行符;若把第二条语句改为 scanf(" %c", &ch);,则格式串中的空格会跳过包括换行符在内的空白字符,使 ch 能读到随后输入的非空白字符。
登录后查看答案
判断:若有定义 double y = 6.01828;,执行语句 printf("%-9.3f|", y); 后的输出为 6.018□□□□|(□表示空格),即数据左对齐、宽度不足 9 位时右侧补空格。
判断:在 C 语言中,float 类型数据的有效数字约为 7 位,因此用 float 存储 123456789 这样的大整数时,末几位可能不准确;同理,比较两个 float 变量的值是否相等时,不宜直接使用 == 运算符。
判断:小明在编写 C 程序时,把一条完整的输出语句末尾的分号漏写了,他认为只要在该语句前加上注释说明“此处应有分号”,编译器就会理解并正常编译通过。
设有定义 int a = 3, b = 7; int *p = &a, *q = &b; 依次执行语句:*p = *q; q = p; *q = 10; 之后,有同学断言:此时 a 的值为 10,且表达式 *(&a) 的值与 a 相等。请判断该断言是否正确。
判断:在 C 语言中,若要通过函数 swap(int *a, int *b) 交换主调函数中两个变量 x、y 的值,必须把 x、y 的地址传递给函数,并在函数内通过 *a、*b 交换所指单元的内容;若函数内只写 int *t = a; a = b; b = t;(即只交换形参指针本身的指向),则主调函数中 x、y 的值不会发生交换。
设有已按升序排列的一维数组 a[8] = {2, 4, 6, 8, 10, 12, 14, 16},用二分查找查找元素 14:第 1 次取 low=0、high=7,mid=(low+high)/2;若 a[mid] < 14 则 low=mid+1,若 a[mid] > 14 则 high=mid-1,重复直到 a[mid]==14。另有人断言:「对 n=8 个元素做冒泡排序最多需要 8 轮比较才能保证有序,且二分查找最多比较 8 次。」请判断上述说法是否正确。
判断:对含有 n 个元素的整型一维数组 a 用冒泡排序按升序排列时,共需进行 n−1 轮比较;若程序中访问 a[n],编译器一定会报错。
判断下列说法是否正确:用 for 循环累乘求 5! 时,若累乘变量 product 初值误设为 0,程序输出结果为 0;而用 while 循环判断整数 n(n≥2)是否为素数时,试除只需从 2 进行到 √n(含)即可得出正确结论。
判断:若有定义 double x = 2.5;,则执行 printf("%d", x); 语句后程序一定会输出 2。
判断:程序段 int a; char ch; scanf("%d", &a); scanf("%c", &ch); 中,若输入 35 并按回车,则 ch 读到的是字符 '3'。
设有定义 int a = 5, b = -3; 判断:求值表达式 (b / 2 == -2) && (a % b == 2) || (++b > -3) 时,因 && 和 || 均发生短路,变量 b 的值不会改变,表达式值为 0。
判断:设有定义 int a = 3, b = 0; 求值表达式 (b != 0) && (a / b > 1) 时,由于 b 为 0,子表达式 a / b 会被计算,因此整个表达式在运行时发生除零错误。
判断:在 C 语言中,变量 Sum 与 sum 是同一个变量,而 Return 可以作为变量名使用。
设有定义 int a = -7, b = 2; 求值表达式 (-7 / 2 == -3) && (a++ % b == 1) || (b << 1 == 4)。有同学判断:该表达式的值为 1,且求值结束后变量 a 的值为 -6。请判断该说法是否正确。
设有定义 int x=-7, y=2; 判断:执行表达式 (x/2 == -3) || (++y > 2) && (x%2 != 0) 后,变量 y 的值为 3。
某初学者写了如下 C 程序:第一行是预处理指令 #include <stdio.h>,第二行是注释 /* 打印两个词 */,第三行定义 int main( ),函数体内有两条语句 printf("Good"); 和 printf("Day");,均以分号结束,最后函数体用一对花括号正确闭合。甲同学说:注释占了一行代码,编译后运行时会输出一行注释文字;乙同学说:若删去第二条语句末尾的分号,程序将无法通过编译。请判断:甲、乙两位同学的说法都正确。
判断:某学生编写了一个 C 程序,其中包含 #include 预处理指令和若干语句,但整个程序中没有定义 main 函数;此外程序里还有一行 /* 提示信息 */ 注释。该程序提交编译时一定会报错,而删除那行注释后程序的编译结果不受影响。
判断:某 JFrame 的内容面板使用 BorderLayout,程序仅调用 add(b1)(未指明方位)将按钮 b1 加入其中,则 b1 会出现在内容面板的中部(CENTER)区域;若随后又调用 add(b2, BorderLayout.SOUTH) 将按钮 b2 加入南部区域,则界面南、中两个区域可同时显示这两个按钮。
判断:在 Java 图形用户界面编程中,若某个事件处理类只关心监听接口中的部分方法,使用对应的适配器类(如 MouseAdapter)继承并仅重写所需方法,可以避免实现接口时必须重写全部方法的冗余代码。