程序设计基础 — C语言
学校: 无
问题 1: 1. 一个算法必须在执行有限个操作步骤后终止指的是算法的(_)特征
选项:
答案: 有穷性
问题 2: 2. 结构化程序设计是(_)应遵循的方法和原则
选项:
答案: 过程化
问题 3: 3. 一个C程序的执行是从
选项:
• A. 本程序的main函数开始,到main函数结束
• B. 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
• C. 本程序的main函数开始,到本程序文件的最后一个函数结束
• D. 本程序文件的第一个函数开始,到本程序main函数结束
答案: 本程序的main函数开始,到main函数结束
问题 4: 1. 在C语言中,数字027是一个
选项:
• A. 八进制数
• B. 十六进制数
• C. 十进制数
• D. 非法数
答案: 八进制数
问题 5: 2. 下列常数中不能作为C的常量的是
选项:
• A. 0xA5
• B. 2.5e-2
• C. 3e2
• D. 0582
答案: 0582
问题 6: 3. 下面四个选项中,均是正确的八进制数或十六进制数的选项是
选项:
• A. -10,0x8f,-011
• B. 0abc,-017,0xc
• C. 0010,-0x11,0xf1
• D. 0a12,-0x123,-0xa
答案: -10,0x8f,-011
问题 7: 4. 已知int i=5;执行语句 i+=++i;i的值是
选项:
• A. 10
• B. 11
• C. 12
• D. A,B,C答案都不对
答案: 请关注公众号【渝粤搜题】查看答案
问题 8: 5. 设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是
选项:
• A. 0至255
• B. 0至65535
• C. -32768至32767
• D. -256至255
答案: 请关注公众号【渝粤搜题】查看答案
问题 9: 1. 设int a;float f;double i;则表达式10+a+i*f值的数据类型是(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 10: 2. 定义:double x=3.5,y=3.2;则表达式(int)x*0.5的值是(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 11: 3. 假定x和y为double型,则表达式x=2,y=x+3/2的值是
选项:
• A. 3.500000
• B. 3
• C. 2.000000
• D. 3.000000
答案: 请关注公众号【渝粤搜题】查看答案
问题 12: 4. 若定义了int x;则将x强制转化成双精度类型应该写成(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 13: 1. 对于char cx=“\039”语句,下列说法正确的是
选项:
• A. 不合法
• B. cx的ASCII值是33
• C. cx的值为四个字符
• D. cx的值为三个字符
答案: 请关注公众号【渝粤搜题】查看答案
问题 14: 2. 下面四个选项中,均是合法转义字符的选项是
选项:
• A. ‘\’’,‘\\’,‘\n’
• B. ‘\’,‘\017’,‘\”’
• C. ‘\018’,‘\f’,‘xab’
• D. ‘\\0’,‘\101’,‘x1f’
答案: 请关注公众号【渝粤搜题】查看答案
问题 15: 3. C语言中字符型数据在内存中是以下哪种形式存储的
选项:
• A. 原码
• B. 补码
• C. 反码
• D. ASCII码
答案: 请关注公众号【渝粤搜题】查看答案
问题 16: 1. 设n=3,则n++的结果是
选项:
• A. 2
• B. 3
• C. 4
• D. 5
答案: 请关注公众号【渝粤搜题】查看答案
问题 17: 2. 设a=6,b=4,则表达式b*=a+3的值为
选项:
• A. 3
• B. 18
• C. 27
• D. 36
答案: 请关注公众号【渝粤搜题】查看答案
问题 18: 1. 格式输出函数语法格式为(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 19: 2. 下列程序
main()
{ char a=69;
printf(“%c\n”,a);
}
输出结果是(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 20: 3. 格式输入函数语法格式为(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 21: 4. 按十六进制整数格式输出变量a语句为(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 22: 5. printf格式控制符%f功能是(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 23: 1. getchar()函数功能是(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 24: 2. 用来输入单个字符的格式控制符是(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 25: 3. 将字符常量’b’输出的语句为(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 26: 4. main()
{ char ch1;
ch1=getchar();
prinft(“ch1=%c”,ch1);
}当程序运行时,从键盘输入a,则程序运行结果为(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 27: 5. 将一个字符从标准的输出设备(通常是显示终端)上输出的语句格式为(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 28: 1. 表达式:10!=9的值是
选项:
• A. true
• B. 非0值
• C. 0
• D. 1
答案: 请关注公众号【渝粤搜题】查看答案
问题 29: 2. 设整型变量a,b的值分别为1,0,那么a==b的结果是
选项:
• A. 0
• B. 1
• C. 2
• D. 都不对
答案: 请关注公众号【渝粤搜题】查看答案
问题 30: 3. 下列属于分支结构的是
选项:
• A. while
• B. if…else
• C. for
• D. 都不对
答案: 请关注公众号【渝粤搜题】查看答案
问题 31: 4. 设x为非0,则下列描述错误的是
选项:
• A. !(x= =0)
• B. x!=0
• C. 3*x!=0
• D. x>0
答案: 请关注公众号【渝粤搜题】查看答案
问题 32: 1. 设有程序段:int k=10;
while(k=0)
k=k-1;
则下面叙述中正确的是
选项:
• A. while循环执行10次
• B. 该循环是无限循环
• C. 循环语句一次也不执行
• D. 循环语句执行一次
答案: 请关注公众号【渝粤搜题】查看答案
问题 33: 2. 执行完以下程序段后哪种说法正确()
x=-1;
while(!x){x=x*x;}此时x的值为
选项:
• A. x=0
• B. x=-1
• C. 1
• D. 死循环
答案: 请关注公众号【渝粤搜题】查看答案
问题 34: 3. 语句while(!x)中的表达式!x等价于
选项:
• A. x==1
• B. x!=0
• C. x!=1
• D. x==0
答案: 请关注公众号【渝粤搜题】查看答案
问题 35: 4. 若有定义int i=1;则执行完循环while(i++<5)以后i的值是()
选项:
• A. 4
• B. 5
• C. 3
• D. 0
答案: 请关注公众号【渝粤搜题】查看答案
问题 36: 1. 若有如下语句:
int x=3;
do{printf("%d\n",x-=2;}
while((!--x));则上面程序段:
选项:
• A. 输出的是1
• B. 输出的是1和-2
• C. 输出的是3和0
• D. 是死循环
答案: 请关注公众号【渝粤搜题】查看答案
问题 37: 2. 下面描述中正确的是()
选项:
• A. 由于 do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
• B. 在do-while 循环体中,循环体至少执行一次
• C. 在do-while循环体中,循环体至少无条件执行一次
• D. do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
答案: 请关注公众号【渝粤搜题】查看答案
问题 38: 3. 执行完以下程序段后哪种说法正确()
x=-1;
do {x=x*x;}while(!x);此时x的值为
选项:
• A. 1
• B. -1
• C. 0
• D. 死循环
答案: 请关注公众号【渝粤搜题】查看答案
问题 39: 4. 下面程序的运行结果是()
main()
{int y=10;
do{y--;}while(--y);
printf("%d\n",y--);}
选项:
• A. -1
• B. 1
• C. 8
• D. 0
答案: 请关注公众号【渝粤搜题】查看答案
问题 40: 1. 以下关于for语句描述正确的是:
选项:
• A. for循环只能用于循环次数已经确定的情况
• B. for循环是先执行循环体语句,后判断表达式
• C. for循环中,不能用break语句跳出循环体
• D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
答案: 请关注公众号【渝粤搜题】查看答案
问题 41: 2. 对for(表达式1;;表达式3)可理解为
选项:
• A. for(表达式1;0;表达式3)
• B. for(表达式1;1;表达式3)
• C. for(表达式1;表达式1;表达式3)
• D. for(表达式1;表达式3;表达式3)
答案: 请关注公众号【渝粤搜题】查看答案
问题 42: 3. 若i是整形变量,则以下循环执行次数是()
for(i=2;i==0;)
printf("%d",i--);
选项:
• A. 无限次
• B. 0次
• C. 1次
• D. 2次
答案: 请关注公众号【渝粤搜题】查看答案
问题 43: 4. 执行语句for(i=1;i++<4;);后变量i的值是()
选项:
• A. 3
• B. 4
• C. 5
• D. 不定
答案: 请关注公众号【渝粤搜题】查看答案
问题 44: 5. for(n=0;n<5;n++)控制循环执行()次
选项:
• A. 5
• B. 3
• C. 6
• D. 4
答案: 请关注公众号【渝粤搜题】查看答案
问题 45: 1. 以下关于for语句描述正确的是:
选项:
• A. for循环只能用于循环次数已经确定的情况
• B. for循环是先执行循环体语句,后判断表达式
• C. for循环中,不能用break语句跳出循环体
• D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
答案: 请关注公众号【渝粤搜题】查看答案
问题 46: 2. 对for(表达式1;;表达式3)可理解为
选项:
• A. for(表达式1;0;表达式3)
• B. for(表达式1;1;表达式3)
• C. for(表达式1;表达式1;表达式3)
• D. for(表达式1;表达式3;表达式3)
答案: 请关注公众号【渝粤搜题】查看答案
问题 47: 3. 若i是整形变量,则以下循环执行次数是()
for(i=2;i==0;)
printf("%d",i--);
选项:
• A. 无限次
• B. 0次
• C. 1次
• D. 2次
答案: 请关注公众号【渝粤搜题】查看答案
问题 48: 4. 执行语句for(i=1;i++<4;);后变量i的值是()
选项:
• A. 3
• B. 4
• C. 5
• D. 不定
答案: 请关注公众号【渝粤搜题】查看答案
问题 49: 5. for(n=0;n<5;n++)控制循环执行()次
选项:
• A. 5
• B. 3
• C. 6
• D. 4
答案: 请关注公众号【渝粤搜题】查看答案
问题 50: 1. 运行下面程序
#include “stdio.h”
main()
{ int k=0,a=1;
While(k<10)
{ for( ; ;)
{ if((k%10)= =0
break;
else
k--;}
k+=11;
a+=k;
}
printf(“%d %d\n”,k,a);}
则输出的结果是
选项:
• A. 21 32
• B. 21 33
• C. 11 12
• D. 10 11
答案: 请关注公众号【渝粤搜题】查看答案
问题 51: 2. 一个循环体中又包含一个完整的循环结构,称为(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 52: 3. 要保证嵌套的每一层循环在逻辑上都是完整的,相互之间绝不允许交叉
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 53: 4. 要保证循环到最后有一个跳出循环的条件,否则会产生死循环
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 54: 5. 各种循环结构都可以进行自我嵌套,也可以相互嵌套,自由组合
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 55: 1. 在C语言中,引用数组元素时,其数组下标的数据类型是
选项:
• A. 整型常量
• B. 整型表达式
• C. 整型常量或常量表达式
• D. 任何类型的表达式
答案: 请关注公众号【渝粤搜题】查看答案
问题 56: 2. 以下对一维数组a的正确说明是
选项:
• A. int n; scanf(“%d”,&n); int a[n];
• B. int n=10,a[n];
• C. int a(10);
• D. #define SIZE 10 int a[SIZE];
答案: 请关注公众号【渝粤搜题】查看答案
问题 57: 3. 若有说明 int a[10]; 则对数组元素的正确引用是
选项:
• A. a[10]
• B. a[3,5]
• C. a(5)
• D. a[10-10]
答案: 请关注公众号【渝粤搜题】查看答案
问题 58: 4. C语言中,数组名代表
选项:
• A. 数组全部元素的值
• B. 数组首地址
• C. 数组第一个元素的值
• D. 数组元素的个数
答案: 请关注公众号【渝粤搜题】查看答案
问题 59: 5. 若已定义数组 float a[8];则下列对数组元素引用正确的是
选项:
• A. a[0]=1;
• B. a[8]=a[0];
• C. a=1;
• D. a[3.5]=1;
答案: 请关注公众号【渝粤搜题】查看答案
问题 60: 1. 若有说明 int a[3][4];则对a数组元素的非法引用是
选项:
• A. a[0][2*1]
• B. a[1][3]
• C. a[4-2][0]
• D. a[0][4]
答案: 请关注公众号【渝粤搜题】查看答案
问题 61: 2. 若二维数组a有m列,则在a[i][j]前面的元素个数为
选项:
• A. j*m+i
• B. i*m+j
• C. i*m+j-1
• D. i*m+j+1
答案: 请关注公众号【渝粤搜题】查看答案
问题 62: 3. 以下能对二维数组a进行正确初始化的语句是
选项:
• A. int a[2][]={{1,0,1},{5,2,3}};
• B. int a[][3]={{1,2,3},{4,5,6}};
• C. int a[2][4]={{1,2,3},{4,5},{6}};
• D. int a[][3]={{1,0,1},{},{1,1}};
答案: 请关注公众号【渝粤搜题】查看答案
问题 63: 4. 以下对二维数组a的说明正确的是
选项:
• A. int a[3][];
• B. float a(3,4);
• C. double a[1][4];
• D. float a(3)(4);
答案: 请关注公众号【渝粤搜题】查看答案
问题 64: 5. 若有说明 int a[][4]={0,0};则下面不正确的叙述是
选项:
• A. 数组a的每个元素都可得到初值0
• B. 二维数组a的第一维大小为1
• C. 因为二维数组a中第二维大小的值除初值个数的商为0,故数组a的行数为1
• D. 只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0
答案: 请关注公众号【渝粤搜题】查看答案
问题 65: 1. 有两个字符数组a、b,则以下正确的输入语句是
选项:
• A. gets(a,b);
• B. scanf(“%s%s”,a,b);
• C. scanf(“%s%s”,&a,&b);
• D. gets(“a”); gets(“b”);
答案: 请关注公众号【渝粤搜题】查看答案
问题 66: 2. 有字符数组a[80]和b[80],则正确的输出语句是
选项:
• A. puts(a,b);
• B. printf(“%s,%s”,a[],b[]);
• C. putchar(a,b);
• D. puts(a); puts(b);
答案: 请关注公众号【渝粤搜题】查看答案
问题 67: 3. 判断字符串a和b是否相等,应当使用
选项:
• A. if(a==b)
• B. if(a=b)
• C. if(strcmp(a,b))
• D. if(strcmp(a,b)==0)
答案: 请关注公众号【渝粤搜题】查看答案
问题 68: 4. 下面对C语言字符数组的描述中错误的是
选项:
• A. 字符数组可以存放字符串
• B. 字符数组的字符串可以整体输入、输出
• C. 可以在赋值语句中通过赋值运算符对字符数组整体赋值
• D. 不可以用关系运算符对字符数组中的字符串进行比较
答案: 请关注公众号【渝粤搜题】查看答案
问题 69: 1. C语言总是从()函数开始执行。
选项:
• A. main
• B. 处于最前面的
• C. 处于最后面的
• D. 随机选一个
答案: 请关注公众号【渝粤搜题】查看答案
问题 70: 2. 一个完整的C源程序是()。
选项:
• A. 要由一个主函数或一个以上的非主函数构成
• B. 由一个且仅一个主函数和零个以上的非主函数构成
• C. 要由一个主函数或一个以上的非主函数构成
• D. 由一个且只有一个主函数或多个非主函数构成
答案: 请关注公众号【渝粤搜题】查看答案
问题 71: 3. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是()。
选项:
• A. float
• B. long
• C. int
• D. double
答案: 请关注公众号【渝粤搜题】查看答案
问题 72: 4. 函数定义指的是在程序中设定一个函数模块。
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 73: 5. 所有函数定义都是并行的,相互独立的。
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 74: 1. 函数调用可以在()。
选项:
• A. 函数表达式中
• B. 函数语句中
• C. 函数参数中
• D. 以上都可以
答案: 请关注公众号【渝粤搜题】查看答案
问题 75: 2. 被调函数返回给主调函数的值称为()。
选项:
• A. 形参
• B. 实参
• C. 返回值
• D. 参数
答案: 请关注公众号【渝粤搜题】查看答案
问题 76: 3. ()可以不进行函数类型说明。
选项:
• A. 被调函数的返回值是整型或字符型时
• B. 被调函数的定义在主调函数定义之前时
• C. 在所有函数定义前,已在函数外预先说明了被调函数类型
• D. 以上都是
答案: 请关注公众号【渝粤搜题】查看答案
问题 77: 4. 被调函数调用结束后,返回到()。
选项:
• A. 主调函数中该被调用函数调用语句处
• B. 主函数中该被调函数语句处
• C. 主调函数中该被调函数语句的前一语句
• D. 主调函数中该被调函数语句的或一语句
答案: 请关注公众号【渝粤搜题】查看答案
问题 78: 5. 被调函数通过()语句,将值返回给主调函数。
选项:
• A. if
• B. for
• C. while
• D. return
答案: 请关注公众号【渝粤搜题】查看答案
问题 79: 1. 以下对C语言函数的有关描述中,正确的是()。
选项:
• A. 在C语言中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
• B. C函数既可以嵌套定义又可递归调用
• C. 函数必须有返回值,否则不能使用函数
• D. C程序中有调用关系的所有函数必须放在同一个源程序文件中
答案: 请关注公众号【渝粤搜题】查看答案
问题 80: 2. 若函数调用时参数为基本数据类型的变量,以下叙述正确的是()。
选项:
• A. 实参与其对应的形参共占存储单元
• B. 只有当实参与其对应的形参同名时才共占存储单元
• C. 实参与对应的形参分别占用不同的存储单元
• D. 实参将数据传递给形参后,立即释放原先占用的存储单元
答案: 请关注公众号【渝粤搜题】查看答案
问题 81: 3. 下面的函数调用语句 func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8))); 中func函数的实参个数是()。
选项:
• A. 3
• B. 4
• C. 5
• D. 8
答案: 请关注公众号【渝粤搜题】查看答案
问题 82: 4. 有以下程序
void fun( int a,int b)
{ int t; t=a; a=b; b=t; }
main()
{ int c[10]={1,2,3,4,5,6,7,8,9,0}, i;
for(i=0;i<10;i+=2) fun(c[i], c[i+1]);
for(i=0;i<10;i++) printf("%d," ,c[i]);
printf("\n"); }
程序的运行结果是()。
选项:
• A. 1,2,3,4,5,6,7,8,9,0
• B. 2,1,4,3,6,5,8,7,0,9
• C. 0,9,8,7,6,5,4,3,2,1
• D. 0,1,2,3,4,5,6,7,8,9
答案: 请关注公众号【渝粤搜题】查看答案
问题 83: 1. 若用数组名作为函数调用的实参,则传递给形参的是()。
选项:
• A. 数组的首地址
• B. 数组的第一个元素的值
• C. 数组中全部元素的值
• D. 数组元素的个数
答案: 请关注公众号【渝粤搜题】查看答案
问题 84: 2. 若函数调用时,用数组名作为函数的参数,以下叙述中正确的是()。
选项:
• A. 实参与其调用的形参共用同一段存储空间
• B. 实参与其对应的形参占用相同的存储空间
• C. 实参将其地址传递给形参,同时形参也会将该地址传递给实参
• D. 实参将其地址传递给形参,等同实现了参数之间的双向值的传递
答案: 请关注公众号【渝粤搜题】查看答案
问题 85: 3. 有以下程序
void exch( int t[ ] )
{ t[0] = t[4]; }
main( )
{ int x[10] = {1,2,3,4,6,7,8,9,10},i=0;
while ( i<=4 ) { exch(&x[i]); i++; }
for (i=0; i<5; i++) printf("%d ",x[i]);
printf( "\n" ); }
程序运行后的输出结果是()。
选项:
• A. 2 4 6 8 10
• B. 1 3 5 7 9
• C. 1 2 3 4 5
• D. 6 7 8 9 10
答案: 请关注公众号【渝粤搜题】查看答案
问题 86: 4. 有以下程序
void fun(int a[ ], int n)
{ int i, t;
for(i=0;i
选项:
• A. 345678
• B. 876543
• C. 1098765
• D. 321678
答案: 请关注公众号【渝粤搜题】查看答案
问题 87: 1. 以下对C语言函数的有关描述中,正确的是()。
选项:
• A. 在被调用的函数中又调用另外一个函数,称“嵌套调用”
• B. 递归调用和嵌套调用是完全不同的函数调用方式
• C. 函数既可以嵌套调用,也可以嵌套定义
• D. 在被调用函数过程中不可以再去调用任何的函数
答案: 请关注公众号【渝粤搜题】查看答案
问题 88: 2. 以下关于函数叙述中,错误的是()。
选项:
• A. 函数嵌套调用时,函数内被调用的函数执行完毕后,继续执行被调函数的剩余代码
• B. 函数嵌套调用时,被调函数与内部被调函数同时返回到主调函数调用处
• C. 实现相关联的功能时需要用到函数的嵌套调用
• D. 函数递归调用类似于循环,因此必须有结束递归的条件
答案: 请关注公众号【渝粤搜题】查看答案
问题 89: 3. 函数的嵌套调用要求内部调用的函数必须有返回值。
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 90: 4. 如果一个函数的嵌套调用是自身,则称为递归调用。
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 91: 5. 因为需要发生函数的嵌套调用,因此需要在被调函数中对嵌套调用的函数进行定义。
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 92: 1. 若有以下定义,则赋值正确的是()。
int a,b,*p;
float c,*q;
选项:
• A. p=&c
• B. q=p
• C. p=NULL
• D. q=*p
答案: 请关注公众号【渝粤搜题】查看答案
问题 93: 2. 有以下程序
#include
main()
{ int m=1,n=2,*p=&m,*q=&n,*r;
r=p; p=q; q=r;
printf("%d,%d,%d,%d\n",m,n,*p,*q); }
程序运行后的输出结果是()。
选项:
• A. 1,2,1,2
• B. 1,2,2,1
• C. 2,1,2,1
• D. 2,1,1,2
答案: 请关注公众号【渝粤搜题】查看答案
问题 94: 3. 有以下程序
void fun(int *a,int *b)
{ int *c; c=a;a=b;b=c; }
main()
{ int x=3,y=5,*p=&x,*q=&y;
fun(p,q); printf("%d,%d,",*p,*q);
fun(&x,&y); printf("%d,%d\n",*p,*q); }
程序运行后的输出结果是()。
选项:
• A. 3,5,5,3
• B. 3,5,3,5
• C. 5,3,3,5
• D. 5,3,5,3
答案: 请关注公众号【渝粤搜题】查看答案
问题 95: 4. 有以下程序
void f(int *p,int *q);
main()
{ int m=1,n=2,*r=&m;
f(r,&n); printf("%d,%d",m,n); }
void f(int *p,int *q)
{ p=p+1; *q=*q+1; }
程序运行后的输出结果是()。
选项:
• A. 1,3
• B. 2,3
• C. 1,4
• D. 1,2
答案: 请关注公众号【渝粤搜题】查看答案
问题 96: 1. 有以下程序
void main( )
{ int a[ ]={10,20,30,40},*p=a,i;
for(i=0;i<=3;i++) { a[i]=*p;p++; }
printf("%d\n",a[2]); }
程序运行后的输出结果是()。
选项:
• A. 30
• B. 40
• C. 10
• D. 20
答案: 请关注公众号【渝粤搜题】查看答案
问题 97: 2. 若有以下定义 int x[10], *pt=x;
则对x数组元素的正确引用是()。
A) *&x[10] B) *(x+3)
C) *(pt+10) D) pt+3
选项:
• A. *&x[10]
• B. *(x+3)
• C. *(pt+10)
• D. pt+3
答案: 请关注公众号【渝粤搜题】查看答案
问题 98: 3. 若有定义语句:
double x[5]={1.0,2.0,3.0,4.0,5.0}, p=x;
则错误引用x数组元素的是()。
选项:
• A. *p
• B. x[5]
• C. *(p+1)
• D. *x
答案: 请关注公众号【渝粤搜题】查看答案
问题 99: 4. 有以下程序
main()
{ int a[ ]={1,2,3,4},y,*p=&a[3];
--p; y=*p;
printf("y=%d\n",y); }
程序的运行结果是()。
选项:
• A. y=0
• B. y=1
• C. y=2
• D. y=3
答案: 请关注公众号【渝粤搜题】查看答案
问题 100: 5. int b=2;
int fun(int *k)
{ b=*k+b; return(b); }
main()
{ int a[10]={1,2,3,4,5,6,7,8},i;
for(i=2;i<4;i++)
{ b=fun(&a[i])+b; printf("%d ",b);}
printf("\n"); }
程序运行后的输出结果是()。
选项:
• A. 10 12
• B. 8 10
• C. 10 28
• D. 10 16
答案: 请关注公众号【渝粤搜题】查看答案
问题 101: 1. 设有以下函数:
void fun(int n,char *s) { …… }
则下面对函数指针的定义和赋值均是正确的是()。
选项:
• A. void (*pf)(); pf=fun;
• B. void *pf(); pf=fun;
• C. void *pf(); *pf=fun;
• D. void (*pf)(int,char); pf=&fun;
答案: 请关注公众号【渝粤搜题】查看答案
问题 102: 2. 设有定义语句 int (*f)(int);,则以下叙述正确的是()。
选项:
• A. f是基类型为 int的指针变量
• B. f是指向函数的指针变量,该函数具有一个 int类型的形参
• C. f是指向 int类型一维数组的指针变量
• D. f是函数名,该函数的返回值是其类型为 int类型的地址
答案: 请关注公众号【渝粤搜题】查看答案
问题 103: 3. 函数指针和指针函数是一个概念。
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 104: 4. 函数指针即为这个函数的入口地址。
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 105: 1. 下列程序段
main()
{ int a;
scanf(“%d”,&a);
switch(a)
{ case 1:printf(“Monday\n”);break;
case 2:printf(“Tuesday\n”);break;
case 3:printf(“Wednesday\n”);break;
case 4:printf(“Thursday\n”);break;
case 5:printf(“Friday\n”);break;
case 6:printf(“Saturday\n”);break;
case 7:printf(“Sunday\n”);break;
default:printf("error!\n");
通过键盘输入3后输出的结果是(_)
选项:
答案: 请关注公众号【渝粤搜题】查看答案
问题 106: 2. switch中每一个case的常量表达式的值
选项:
• A. 必须互不相同
• B. 可以相同
• C. 只能是整数
• D. 可以是任意数值
答案: 请关注公众号【渝粤搜题】查看答案
问题 107: 3. switch语句是实现哪种结构的语句
选项:
• A. 顺序结构
• B. 选择结构
• C. 循环结构
• D. 以上结构都可以
答案: 请关注公众号【渝粤搜题】查看答案
问题 108: 4. 下列说法错误的是
选项:
• A. 各个case的出现次序不影响执行结果
• B. 每一个case的常量表达式的值必须互不相同,否则出现矛盾现象
• C. switch语句中的“表达式”的值可以是任何类型的数值
• D. case后面的“常量表达式”的结果值的类型必须是整数或字符
答案: 请关注公众号【渝粤搜题】查看答案
微信扫码添加好友
如二维码无法识别,可拨打 13662661040 咨询。