全部来自 AI 原创生成并经逐题审校的题目,带 精品 标记的为 AI 复审通过。整卷生成请去组卷。
已知文本文件 data.txt 的内容为 x=42;y=7(无其他多余字符),程序中已执行 fp=fopen("data.txt","r") 且打开成功,并定义了整型变量 m、n、r。执行语句 r=fscanf(fp, "x=%d;y=%d", &m, &n); 后,m 的值为____,n 的值为____,r 的值为____。
登录后查看答案
有定义:struct inner { int a; int b; }; struct outer { struct inner in; int c; }; 执行语句 struct outer o = { {7}, 9 }; 后,o.in.b 的值是 ___。
设 A = {1, 2, 3, 4, 5},S(A) 表示 A 上全体双射函数(即 5 元置换)构成的集合。定义子集 T = {σ ∈ S(A) | σ(1) ≠ 1 且 σ(5) ≠ 5},则 |T| = ____。
设有如下程序片段,运行环境为小端(低地址存放低字节),unsigned int 占 4 字节,unsigned short 占 2 字节,unsigned char 占 1 字节: union U { unsigned int a; unsigned char b[4]; struct { unsigned short x; unsigned short y; } s; }; union U u; u.a = 0x12345678; u.s.x = 0xABCD; u.b[2] = 0xEF; printf("%X", u.a); 程序输出为 ___。
设 p 表示“周一超市打折”,q 表示“周一商场延长营业时间”。命题“并非周一超市不打折且商场不延长营业时间”的符号化形式为 ____;若该命题为真且 q 为假,则 p 的真值为 ____。
某二进制文件以 "rb" 模式成功打开,已知该文件总长度为 200 字节。若执行语句 fseek(fp, -10L, SEEK_END),调用成功后,再调用 ftell(fp) 的返回值为____(单位:字节)。
有如下 C 语言函数定义: int r(int n) { if (n % 2 == 0) return n / 2; else return 3 * n + 1; } int s(int n) { return r(r(r(n))); } 在主函数中执行语句 int t = s(5); 后,变量 t 的值为____。
已包含头文件 <string.h>。定义 char s[] = "rhythm!"; 执行 size_t n = strcspn(s, "aeiou"); 后,n 的值为 ____。
设命题 p、q、r、s 满足前提:(1) p∨q;(2) p→r;(3) r→s;(4) ¬s。仅使用命题逻辑推理规则,最终可确定 q 的真值为____。
使用 GCC 编译时,希望启用一组常见警告,但不要求启用通常由 -Wextra 补充的警告。应在命令中加入选项 ____。
阅读代码:#define LIMIT 8 #define COPY LIMIT int value = COPY; 预处理后,变量定义中的初始化表达式为 ____。
在 C 语言中,文件指针变量本身存储的是地址值。设程序中有如下声明与语句: FILE *fp, *gq; fp = fopen("data.txt", "r"); gq = fp; 若 fopen 调用成功,且执行 gq = fp; 后不再对 fp、gq 重新赋值,则表达式 (fp == gq) 的值为 ____(填 0 或 1)。
某二进制文件已成功以 "rb" 模式打开,且文件长度足够,初始文件位置不作限定。程序依次成功执行 fseek(fp, 7L, SEEK_SET) 和 fseek(fp, -3L, SEEK_CUR),随后调用 long p = ftell(fp);。变量 p 的值为____。
某班 6 名学生的信息用结构体数组 s 存储,每个元素含成员 name、score、age。已知各元素的 score 依次为 78、92、85、92、67、92,age 依次为 20、19、21、19、22、19。执行以下代码后,变量 cnt 的值为 ____。 int cnt = 0; for (int i = 0; i < 6; i++) { int j = 0; for (int k = 0; k < i; k++) if (s[k].score == s[i].score && s[k].age == s[i].age) { j = 1; break; } if (!j && s[i].score > 80) cnt++; }
在 C 语言中定义共用体类型:union Data { int i; char c; double d; }; 则 sizeof(union Data) 等于各成员所占字节数的____,即 8 字节;而共用体变量在同一时刻只能____其中一个成员的值。
在 C 程序开发过程中,源程序从编写到运行需经历编辑、预处理、编译、链接、运行等环节。若某环节未能成功完成,则其后续产物将不会产生。已知某开发者在编译 hello.c 时,链接阶段报告找不到被调用的函数定义,链接失败。此时程序的可执行文件____(填「已生成」或「未生成」),因此该程序____(填「能」或「不能」)被装入内存运行。
有如下C语言程序片段:int a = 5, b = 8; int *p, *q; 依次执行以下语句:① p = &a; ② q = p; ③ *q = b; ④ p = &b; 则执行完上述语句后,变量 a 的值为 ____,变量 b 的值为 ____,此时 *p 的值为 ____。
阅读以下C程序,写出运行后的输出结果(用空格分隔各整数): ```c #include <stdio.h> int g = 10; int f(int a) { static int s = 0; int g = 3; s = s + a + g; g = s * 2; return g; } int main() { int a = 1; printf("%d ", f(a)); printf("%d ", f(a)); printf("%d ", g); printf("%d", a); return 0; } ``` 输出结果为 ___。
C 语言中,若某函数定义在主调函数之后,则必须在主调函数之前对该函数进行____(填写“声明”或“定义”)。若函数不需要返回任何值,其返回值类型应写为____。
阅读下列 C 语言代码片段: int k = 3; int b[k]; int c[] = {2, 5, 8}; int d[5] = {1, 2}; 下列关于上述一维数组定义与初始化的判断中,正确的是____(填写序号:①/②/③/④/⑤,若有多项正确则按从小到大顺序连写,如①④)。 ① 语句 int b[k]; 合法,因为 k 是已初始化的整型变量,属于 C99 变长数组; ② 数组 c 的长度为 3,其元素依次为 c[0]=2、c[1]=5、c[2]=8; ③ 数组 d 的长度为 5,只有 d[0]、d[1] 被显式初始化,其余元素的值均为 0; ④ 语句 int c[];合法,编译器会自动确定数组长度为 0; ⑤ 数组 d 中 d[2] 未显式赋值,其值是不确定的随机值,不能保证为 0。