番禺制作网站设计,WordPress连接不上FTP,西安旅游必去十大景点,商城网站项目案例1. C语言中#xff0c;逻辑“真”等价于#xff08; #xff09;
题目分析#xff1a;
“逻辑真”在C语言中通常指的是非零数。
A. 大于零的数B. 大于零的整数C. 非零的数 (正确答案)D. 非零的整数
正确答案#xff1a;C 2. 若定义了数组 int a[3][4];#xff0c;则对…1. C语言中逻辑“真”等价于
题目分析
“逻辑真”在C语言中通常指的是非零数。
A. 大于零的数B. 大于零的整数C. 非零的数 (正确答案)D. 非零的整数
正确答案C 2. 若定义了数组 int a[3][4];则对a数组元素的非法引用是
题目分析
题目考查的是二维数组的访问定义的时候a[3][4] 表示有3行4列 但是使用的时候是从数组坐标0开始的a[0][0] 到 a[2][3]。任何超出这个范围的引用都是非法的。
A. a[0][2*1]B. a[1][3]C. a[4-2][0]D. a[0][4] (正确答案)
正确答案D 3. 执行C语言语句 “for(i1; i4; );” 后变量i的值是
题目分析
这个for循环从 i1 开始条件是 i4i先比较再自增直到i变为5时循环终止。
A. 2B. 3C. 4D. 5 (正确答案)
正确答案D 4. 执行下面的一段C程序后变量x的值为 。
char x 200;
int a 300;
BOOL flag;
int value1, value2;
value1 200;
value2 300;
if (flag ((value1 value2) 200)) {x x a;
}题目分析 x 是char类型初始值为200 分解这个表达式(flag ((value1 value2) 200)) ((value1 value2) 200)中value1先被value2赋值为300然后value再与200进行对比如果等于为true1不等于为false0.这里表达式结果为flase0 然后flag 未被赋值默认为0flag与导致 if 条件不成立不执行 x x a; 所以 x 保持初始值。 A. 0 B. 200 (正确答案) C. 300 D. 500
正确答案B 5. 执行下列程序时从键盘上输入5则输出结果是
#include stdio.h
main()
{int x;scanf(%d,x);if(x5) printf(%d\n, x);else printf(%d\n, x--);
}题目分析
输入为5时x先进行比较再自增因此条件 x 5 为真执行 printf(%d\n, x);x–先输出6后自减。
A. 7B. 6 (正确答案)C. 5D. 4
正确答案B 6. 以下C语言程序的输出结果是 。
struct s
{int x,y;
} data[2] {10,100,20,200};
main()
{struct s *pdata;p;printf(%d\n,(p-x));
}A. 10B. 11C. 20D. 21 (正确答案)
题目分析 初始化: data[0] 初始化为 {10, 100}data[1] 初始化为 {20, 200} 指针 p 初始状态: p - data[0] (10, 100) --------------------| data ||--------------------|| data[0] | ⬅p (指向 data[0])| ------ || | 10|100| || ------ || ||--------------------|| data[1] || ------ || | 20|200| || ------ |--------------------指针自增: p现在 p 指向 data[1](20, 200) --------------------| data ||--------------------|| data[0] | | ------ || | 10|100| || ------ || ||--------------------|| data[1] | ⬅p (指向 data[1])| ------ || | 20|200| || ------ |--------------------访问和自增 (p-x)访问 p-xdata[1].x并进行自增操作 p 指向 data[1] 后p-x 的值为20(p-x) 使其值变为21最终输出21。 --------------------| data ||--------------------|| data[0] | | ------ || | 10|100| || ------ || ||--------------------|| data[1] | ⬅p (指向 data[1])| ------ | // data[1].x 从 20 变为 21| | 21|200| || ------ |--------------------正确答案D 7. 阅读下面程序该程序运行后的输出结果是 。
#include stdio.h
int a;
int f(int);
main()
{int a0;printf(%d\n,f(5));printf(%d\n,f(10));
}
int f(int m)
{static int a0;int b0;am; b5;return b;
}题目分析 函数 f 中的静态变量 a 的值累加函数结束不会被清零 b 是局部变量每次调用后都被初始化为0最终返回5 输出为两次 5。 A. 5, 15 B. 5, 10 (正确答案) C. 0, 0 D. 0, 10
正确答案B
第8题
阅读以下程序并选择符合要求的输出结果。
char [] ;
* ;;
() _____
() _____
() _____选项
()()()
根据题目描述无法确定具体的输出结果因为缺少关键信息。请提供完整的程序或更多的上下文信息以便准确回答。
第9题
阅读以下程序片段并选择符合要求的输出结果。
void foo(void)
{unsigned int a 6;int b -20;(ab 6)? puts( 6): puts( 6);
}选项
(A) 6(B) 6© 不确定
解答
unsigned int a 6; 定义了 a 为无符号整数值为 6。int b -20; 定义了 b 为有符号整数值为 -20。计算 a b 得到 -14。因为 a b 是负数所以 a b 6。输出 6。
答案(B) 6
第10题
下面的程序(a)和程序(b)运行后y 和 c 的值分别是。
程序(a):
#define f(x) x*x
main()
{int x2; float y;yx/f(x);
}程序(b):
#define f(x) x/x
main()
{int x2; float y;yx/f(x);
}解答 程序(a): #define f(x) x*x y x / f(x) 展开宏替换后为 y 2 / (2*2)即 y 2 / 4结果为 0.5。 程序(b): #define f(x) x/x y x / f(x) 展开宏替换后为 y 2 / (2/2)即 y 2 / 1结果为 2。
答案
程序(a)运行后y 的值为 0.5。程序(b)运行后y 的值为 2。
请确认是否正确理解了题目内容如有不同意见或补充请告知。
好的我来解答一下这张试卷上的题目。
选择题部分
seldomby themselvesalone
简答题部分
请问 #include filename.h 和 #include filename.h 有什么区别
#include filename.h: 表示只在标准库里面去查找这个头文件。#include filename.h: 表示先在用户所在的目录路径去查找找不到的话再去标准库里面去查找。
请写出 char *p 与 “零值” 比较的 if 语句。
if (*p \0) {// do something
}写一个“标准”宏 MIN这个宏输入两个参数并返回较小的一个。
#define MIN(X,Y) ((X)(Y)?(X):(Y))请简述以下两个 for 循环的优点和缺点。 第一个 for 循环: 优点当 condition 条件改变时会改变 DoSomething 进行 DoOtherThing。缺点需要额外的条件判断代码可能更复杂。 第二个 for 循环: 优点不需要额外的条件判断代码简洁。缺点如果 condition 改变可能会导致 DoSomething 和 DoOtherThing 都被执行效率较低。
希望这些解答对您有帮助如果有其他问题请随时告诉我。
好的我来解答一下这张试卷上的题目。
第20题
请说明 Heap 与 stack 的区别。5分
Heap: 属于堆空间需要通过手动申请和释放如使用 malloc 或 calloc 分配一块空间后没有释放那么这块空间可以用动态存储结束。Stack: 属于栈空间用来存放局部变量、函数调用时所需的临时空间它是由编译器自动分配和释放。
第21题
编写 strcpy 函数15分 已知 strcpy 函数的原型是 char *strcpy(char *strDest, const char *strSrc); 其中 strDest 是目的字符串strSrc 是源字符串。
int def_copy(char *strDest, const char *strSrc)
{while(*strSrc ! \0){*strDest *strSrc;strDest;strSrc;}return 0;
}第22题
请用 C 语言实现将二维数组行列元素互换存到另一个数组中。15分 数据结构函数原型可自行定义。
void swap(int arr[][N], int line, int tmp[][N])
{for (int i 0; i line; i){for (int j 0; j N; j){tmp[i][j] arr[j][i];}}
}第23题
请编写一个 C 函数该函数给出一个字节中输入参数被置 1 的位的个数。15分 函数原型是 unsigned short BitNum(const unsigned char input)
unsigned short BitNum(const unsigned char input)
{int cnt 0;for (int i 0; i 8; i){if (input 1)cnt;input 1;}return cnt;
}希望这些解答对你有所帮助如果有任何疑问请随时提问。