四川开放电大作业试卷题库网
成都开放大学C语言程序设计作业答案 (2)
成都开放大学 2025-05-18 15:54:49 22 0
四川开放大学作业考试答案

想要快速找到正确答案?

立即关注 四川开放大学微信公众号,轻松解决学习难题!

开放大学作业与答案
扫码关注

作业辅导
扫码关注
论文指导
轻松解决学习难题!

成都开放大学C语言程序设计作业答案

C语言程序设计

学校: 成都开放大学

问题 1: 1. 当处理特定问题时的循环次数已知时,通常采用的语句是( )。

选项:

A. for

B. while

C. do-while

D. switch

答案: for

问题 2: 2. 在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写成的语句是( )。

选项:

A. for

B. if

C. do

D. while

答案: if

问题 3: 3. for语句能够被改写成的语句是( )。

选项:

A. 复合

B. if

C. switch

D. while

答案: while

问题 4: 4. 下面循环语句执行结束后输出的i值为( )。 for(int i=0; in/2) {cout<

选项:

A. n/2

B. n/2+1

C. n/2-1

D. n-1

答案: n/2+1

问题 5: 5. 在下面循环语句中,内层循环体S语句的执行总次数为( )。 for(int i=0; i

选项:

A. n

B. (n+1)/2

C. n(n-1)/2

D. n(n+1)/2

答案: n(n+1)/2

问题 6: 6. 在下面的do循环语句中,其循环体被执行的次数为( )。 int i=0; do i++; while(i*i<10);

选项:

A. 4

B. 3

C. 5

D. 2

答案: 4

问题 7: 7. 在下面的一维数组定义中,有语法错误的选项是( )。

选项:

A. int a[]={1,2,3};

B. int a[10]={0};

C. int a[];

D. int a[5];

答案: 请关注公众号【青鸟搜题】查看答案

问题 8: 8. 在下面的二维数组定义中,语法正确的选项是( )。

选项:

A. int a[5][];

B. int a[][5];

C. int a[][3]={{1,3,5},{2}};

D. int a[](10);

答案: 请关注公众号【青鸟搜题】查看答案

问题 9: 9. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][1]的值为( )。

选项:

A. 2

B. 4

C. 6

D. 8

答案: 请关注公众号【青鸟搜题】查看答案

问题 10: 10. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为( )。

选项:

A. 0

B. 4

C. 8

D. 6

答案: 请关注公众号【青鸟搜题】查看答案

问题 11: 11. 在执行“typedef int DataType;”语句后,标识符DataType与保留字int具有完全相同的含义和作用。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 12: 12. 在switch语句中,每个case和冒号之间的表达式只能是常量。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 13: 13. 为了结束本层循环类语句或switch语句的执行过程,在语句体中需要使用break语句。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 14: 14. 在程序中执行到break语句时,将结束所在函数的执行过程,返回到调用该函数的位置。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 15: 15. 在程序执行完成任一个函数调用后,将结束整个程序的执行过程,返回到操作系统或C语言集成开发环境界面窗口。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 16: 16. 假定一维数组的定义为“char* a[8];”,则该数组所含元素的个数大于8。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 17: 17. 假定二维数组的定义为“int a[3][5];”,则该数组所占存储空间的字节数为60。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 18: 18. 假定二维数组的定义为“char a[M][N];”,则该数组所含元素的个数为M+N。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 19: 19. 假定二维数组的定义为“double a[M][N];”,则每个数组元素的行下标取值范围在0~M-1之间。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 20: 20. 假定二维数组的定义为“double a[M][N];”,则每个数组元素的列下标取值范围在0~N之间。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 21: 21. 存储一个空字符串需要占用0个字节的存储空间。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 22: 22. 使用“typedef char BB[10][50];”语句定义标识符BB为含有10行50列的二维字符数组类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 23: 23. 存储字符'a'需要占用1个字节的存储空间。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 24: 24. 空字符串的长度为1。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 25: 25. 字符串"a:\\xxk\\数据"的长度为13。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 26: 26. 为了存储一个长度为n的字符串,所使用的字符数组的长度至少为n+1。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 27: 27. strcmp函数用于进行两个字符串之间的比较。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 28: 28. strcpy函数用于把一个字符串拷贝到另一个字符数组空间中。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 29: 29. 一个二维字符数组a[10][20]能够最多存储9个字符串。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 30: 30. 一个二维字符数组a[10][20]能够存储的每个字符串的长度不超过20。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 31: 31. #include __ void main() { __ int i, s1=0, s2=0; __ for(i=0;i<10;i++) __ if(i%2) s1+=i; else s2+=i; __ printf("%d %d\n",s1,s2); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 32: 32. #include __ void main() { __ __int n=6,y=1; __ while(n) y*=n--; __ printf("y=%d\n",y); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 33: 33. #include __ const int M=20; __ void main() __ { __ int i,c2,c3,c5; __ c2=c3=c5=0; __ for(i=1; i<=M; i++) { __ __if(i%2==0) c2++; __ if(i%3==0) c3++; __ if(i%5==0) c5++; __ } __ printf("%d %d %d\n",c2,c3,c5); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 34: 34. #include __ void main() __ { __ int i,s; __ for(i=1,s=0;i<10;i++) { __ if(i%3==0) continue; __ s+=i; __ } __ printf("%d\n",s); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 35: 35. #include __ void main() { __ int a[8]={12,39,26,41,55,63,72,40}; __ int i, i1=0, i2=0; __ for(i=0;i<8;i++) __ if(a[i]%2==1) i1++; else i2++; __ printf("%d %d\n",i1,i2); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 36: 36. #include __ int a[10]={4,5,6,15,20,13,12,7,8,9}; __ void main() __ { __ int i,s[4]=0; __ for(i=0; i<10; i++) { __ switch(a[i]%4) { __ case 0: s[0]+=a[i];break; __ case 1: s[1]+=a[i];break; __ case 2: s[2]+=a[i];break; __ default: s[3]+=a[i];break; __ } __ } __ for(i=0; i<4; i++) printf("%d ",s[i]); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 37: 37. #include __ void main() { __ char a[]="abcdbfbgacd"; __ int i1=0, i2=0, i=0; __ while(a[i]) { __ if(a[i]=='a') i1++; __ if(a[i]=='b') i2++; __ __i++; __ } __ printf("%d %d %d\n",i1,i2,i); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 38: 38. #include __ void main() { __ int a[3][4]={{1,2,7,8},{5,6,10,6},{9,12,3,4}}; __ int m=a[0][0]; __ int i,j; __ for(i=0; i<3; i++) __ for(j=0; j<4; j++) __ if(a[i][j]>m) m=a[i][j]; __ printf("%d\n",m); __ } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 39: 1. 在下面的保留字中,不能作为函数的返回值类型的是( )。

选项:

A. void

B. int

C. enum

D. long

答案: 请关注公众号【青鸟搜题】查看答案

问题 40: 2. 假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为( )。

选项:

A. 1

B. 2

C. 4

D. 8

答案: 请关注公众号【青鸟搜题】查看答案

问题 41: 3. 假定a为一个数组名,在下面的表达式中,存在语法错误的是( )。

选项:

A. a[i]

B. *a++

C. *a

D. *(a+1)

答案: 请关注公众号【青鸟搜题】查看答案

问题 42: 4. 用calloc函数创建具有10个整型元素的一维数组的正确语句是( )。

选项:

A. int *p=calloc(10,2);

B. int *p=calloc(10);

C. int *p=calloc(10,4);

D. int *p=malloc(10)

答案: 请关注公众号【青鸟搜题】查看答案

问题 43: 5. 假定k是一个double类型的变量,则定义变量p的正确语句为( )。

选项:

A. double p=&k;

B. int *p=&k;

C. double &p=*k;

D. char *p="Thank you!";

答案: 请关注公众号【青鸟搜题】查看答案

问题 44: 6. 若有语句为“int a[10], x, *pa=a;”,要把数组a中下标为3的元素值赋给x,则不正确的语句为( )。

选项:

A. x=pa[3];

B. x=*(a+3);

C. x=a[3];

D. x=*pa+3;

答案: 请关注公众号【青鸟搜题】查看答案

问题 45: 7. 假定有语句为“int b[10]; int *pb;”,则下面不正确的赋值语句为( )。

选项:

A. pb=b;

B. pb=&b[0];

C. pb=b+2;

D. pb=b[5];

答案: 请关注公众号【青鸟搜题】查看答案

问题 46: 8. 已知“int *p=malloc(100);”,要释放p所指向的动态内存,正确的语句为( )。

选项:

A. free(p);

B. free p;

C. free(*p);

D. free[p];

答案: 请关注公众号【青鸟搜题】查看答案

问题 47: 9. 在程序的一个文件中定义的函数,若要在另一个文件中调用,则必须在这另一个文件中给出该函数的( )。

选项:

A. 原型语句

B. 参数表

C. 函数名

D. 返回类型

答案: 请关注公众号【青鸟搜题】查看答案

问题 48: 10. 假定一个函数定义为“static int f1(int x,int y){return x+y;}”,该函数名称为( )。

选项:

A. static

B. int

C. f1

D. return

答案: 请关注公众号【青鸟搜题】查看答案

问题 49: 11. 假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是( )。

选项:

A. ff(a)

B. ff(a[0])

C. ff(a+3)

D. ff(&a[0])

答案: 请关注公众号【青鸟搜题】查看答案

问题 50: 12. 假定一个函数的二维数组参数说明为char w[][N],与之等价的指针参数说明为( )。

选项:

A. char (*w)[N]

B. char *w[N]

C. char (*w)N

D. char**a

答案: 请关注公众号【青鸟搜题】查看答案

问题 51: 13. 在C语言中,一个函数由函数头和函数体组成。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 52: 14. 在函数模块之外定义的变量称为全局变量,若没有被初始化则系统隐含对它赋初值0。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 53: 15. 如果一个函数只允许同一程序文件中的函数调用,则不应在该函数定义的开始前加上保留字static。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 54: 16. 如果在一个函数体中又出现对自身函数的调用,此种函数调用被称为递归调用。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 55: 17. 调用系统函数时,要先使用#include命令包含该系统函数的原型语句所在的系统头文件。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 56: 18. 函数形参变量不属于局部变量。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 57: 19. 假定p所指对象的值为25,p+1所指对象的值为46,则*p++的值为46。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 58: 20. 假定p所指对象的值为25,p+1所指对象的值为46,则*++p的值为25。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 59: 21. 假定p所指对象的值为25,p+1所指对象的值为46,则执行*(p++)运算后,p所指对象的值为46。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 60: 22. 假定a是一个指针数组,则a+i所指对象的地址比a地址大4*i字节。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 61: 23. 若要把一个整型指针p转换为字符指针,则采用的强制转换表达式为(char*)p。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 62: 24. 假定一个数据对象为int*类型,则指向该对象的指针类型仍为int*类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 63: 25. 假定x为一个简单变量,则&x表示x的地址。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 64: 26. 若p指向x,则*p与x的值不同。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 65: 27. NULL是一个符号常量,通常作为空指针值,它代表的值为0。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 66: 1. 在C语言中,一条简单语句的结束符是( )。

选项:

A. 逗号

B. 冒号

C. 分号

D. 空格

答案: 请关注公众号【青鸟搜题】查看答案

问题 67: 2. 在C语言中,每条复合语句的开始标记字符为( )。

选项:

A. [

B. (

C. {

D. <

答案: 请关注公众号【青鸟搜题】查看答案

问题 68: 3. 不符合C语言规定的复合语句是( )。

选项:

A. {}

B. {;}

C. {x=0;}

D. {y=10}

答案: 请关注公众号【青鸟搜题】查看答案

问题 69: 4. C语言中的选择类语句有两条,它们是( )。

选项:

A. if和switch

B. if和else

C. switch和case

D. else和case

答案: 请关注公众号【青鸟搜题】查看答案

问题 70: 1. 要定义a和b为两个整型变量,则使用的定义语句为( )。

选项:

A. int a;b;

B. int a,b;

C. int a b;

D. int a:b;

答案: 请关注公众号【青鸟搜题】查看答案

问题 71: 1. 运算符优先级最高的是(  )。

选项:

A. %

B. ||

C. ++

D. /

答案: 请关注公众号【青鸟搜题】查看答案

问题 72: 2. 下列数值中最小值是(  )。

选项:

A. 28/8

B. 35/3

C. 28%8

D. 35%3

答案: 请关注公众号【青鸟搜题】查看答案

问题 73: 3. 已知x的初值为15,则下列各表达式中的最小值为(  )。

选项:

A. x%=20

B. x+=10

C. x/=2

D. x*=2

答案: 请关注公众号【青鸟搜题】查看答案

问题 74: 4. 若x=5,y=10,则计算y*=++x表达式后,y的值为(  )。

选项:

A. 50

B. 40

C. 60

D. 55

答案: 请关注公众号【青鸟搜题】查看答案

问题 75: 5. 设x和y均为逻辑值,则x && y为真的条件是(  )。

选项:

A. 它们均为真

B. 其中一个为真

C. 它们均为假

D. 其中一个为假

答案: 请关注公众号【青鸟搜题】查看答案

问题 76: 6. x<=10的相反表达式为(  )。

选项:

A. x>=10

B. x>10

C. x!=10

D. x>0

答案: 请关注公众号【青鸟搜题】查看答案

问题 77: 7. 表达式(float)25/4的值为6。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 78: 8. 表达式x=x+y表示成复合赋值表达式为x=+y。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 79: 9. 增量表达式++y表示成赋值表达式为y=y+1。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 80: 10. 表达式sizeof(25)的值等于4。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 81: 11. 逻辑表达式(x>3 && x<10)的相反表达式为(x<=3 || x>=10)。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 82: 1. int类型的长度为(  )。

选项:

A. 1

B. 2

C. 4

D. 8

答案: 请关注公众号【青鸟搜题】查看答案

问题 83: 2. 常数-4.25的数据类型为(  )。

选项:

A. 整型

B. 单精度型

C. 双精度型

D. 长双精度型

答案: 请关注公众号【青鸟搜题】查看答案

问题 84: 3. 一个有符号字符类型的值域范围是(  )。

选项:

A. -128到+127

B. 0到255

C. -127到255

D. 1到255

答案: 请关注公众号【青鸟搜题】查看答案

问题 85: 4. 字符串"Its\40\n"的长度为(  )。

选项:

A. 5

B. 6

C. 7

D. 8

答案: 请关注公众号【青鸟搜题】查看答案

问题 86: 5. 实数340.25对应的规格化浮点数为(  )。

选项:

A. 340.25

B. 34.025e1

C. 3.4025e2

D. 0.34025e3

答案: 请关注公众号【青鸟搜题】查看答案

问题 87: 6. 要利用const保留字定义整型常量ABC的值为10,则对应的定义语句为(  )。

选项:

A. const int ABC 10;

B. const int ABC,10;

C. const int ABC;10;

D. const int ABC=10;

答案: 请关注公众号【青鸟搜题】查看答案

问题 88: 7. 要利用#define命令定义ABC常量的值为100,则对应的命令格式为(  )。

选项:

A. #define ABC=100

B. #define ABC==100

C. #define ABC 100

D. #define ABC;100

答案: 请关注公众号【青鸟搜题】查看答案

问题 89: 8. 下列数值中最大值是(  )。

选项:

A. 28/8

B. 35/3

C. 28%8

D. 35%4

答案: 请关注公众号【青鸟搜题】查看答案

问题 90: 9. 在下面运算符中,优先级最高的是( )。

选项:

A. !

B. &&

C. ||

D. !=

答案: 请关注公众号【青鸟搜题】查看答案

问题 91: 10. 设有语句序列为“int a=12; a+=a*a;”,则执行结束后,a的值为(  )。

选项:

A. 12

B. 144

C. 156

D. 288

答案: 请关注公众号【青鸟搜题】查看答案

问题 92: 11. 在C语言中,用于比较大小的关系运算符的总数为(  )。

选项:

A. 3

B. 4

C. 5

D. 6

答案: 请关注公众号【青鸟搜题】查看答案

问题 93: 12. x>0 && y<=5的相反表达式为(  )。

选项:

A. x<=0 || y>5

B. x>0 || y<=5

C. x<=0 && y>5

D. x<0 && y!=5

答案: 请关注公众号【青鸟搜题】查看答案

问题 94: 13. 假定x是一个逻辑量,则(x && !x)和(x || !x)的值分别为( )。

选项:

A. 1和1

B. 0和0

C. 0和1

D. 1和0

答案: 请关注公众号【青鸟搜题】查看答案

问题 95: 14. 假定x=4.6,则函数ceil(x)的值为( )。

选项:

A. 4.0

B. 4.6

C. 4.5

D. 5.0

答案: 请关注公众号【青鸟搜题】查看答案

问题 96: 15. 表达式floor(2.3457*100+0.5)/100的值为( )。

选项:

A. 2.35

B. 2

C. 2.34

D. 2.3457

答案: 请关注公众号【青鸟搜题】查看答案

问题 97: 16. 常数3.26e4是双精度浮点数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 98: 17. 浮点数只有单精度表示,没有双精度表示。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 99: 18. 定点数包括单精度定点数和双精度定点数两种。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 100: 19. 定义符号常量只有一种方法,就是采用预处理命令#define的方法。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 101: 20. 使用const语句定义一个符号常量时,则必须对它同时进行初始化。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 102: 21. 在一条变量定义语句中,定义的变量和赋给它的初值之间只能使用等号(=)。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 103: 22. 假定x=5,则表达式2+x++的值为7。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 104: 23. 表达式(int)14.6%5的值为0。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 105: 24. 表达式x=x+1表示成增量表达式为x++。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 106: 25. 假定x=5,则执行“a=(x?10:20);”语句后a的值为10。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 107: 26. 逻辑表达式(a>b || b==5)的相反表达式为(a>b && b==5)。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 108: 27. 在C语言中,求一个整数的绝对值的数学函数为abs(x)。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 109: 28. 在C语言中,退出程序运行的系统函数为exit()。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 110: 1. 若x的值为5,则执行“if(x>10) x++; else x--;”语句后,x的值为( )。

选项:

A. 6

B. 5

C. 4

D. 3

答案: 请关注公众号【青鸟搜题】查看答案

问题 111: 2. 若x的值为-10,则执行“if(x) x++; else x--;”语句后,x的值为( )。

选项:

A. -11

B. -9

C. -10

D. 0

答案: 请关注公众号【青鸟搜题】查看答案

问题 112: 3. 在if语句中,可以带有else子句,也可以省略它。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 113: 4. 在if语句中,每个else关键字与它前面同层次并且最接近的if关键字相配套。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 114: 5. 执行下面程序的输出结果为 #include   void main() {     int a=25,b=18;     if(a>b) printf("%s\n","a>b");     if(a==b) printf("%s\n","a==b");     if(a   } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 115: 6. 执行下面程序的输出结果为 #includestdio.h>   #include   void main() {   int a=18,b=4,c=0;     if(a/b) {c+=a/b; c+=a%b;}     if(a%b) {a=a/b; b=a%b;}   printf("%d",a+b+c);   }

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 116: 1. 在一个数组中,数组元素a[i]前面的元素个数为( )。

选项:

A. i

B. i+1

C. i-1

D. 2*i

答案: 请关注公众号【青鸟搜题】查看答案

问题 117: 2. 假定一维数组的定义为“char a[8];”,则该数组所占用的存储空间的字节数为( )。

选项:

A. 8

B. 16

C. 64

D. 32

答案: 请关注公众号【青鸟搜题】查看答案

问题 118: 3. 对于一维数组元素,数组名后使用一对中括号。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 119: 4. 二维数组元素带有一个下标。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 120: 1. 假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址大( )。

选项:

A. 1个字节

B. 2个字节

C. 4个字节

D. 8个字节

答案: 请关注公众号【青鸟搜题】查看答案

问题 121: 2. 假定变量m定义为“int m=7;”,则下面定义语句格式正确的是( )。

选项:

A. int p=&m;

B. int *p=&m;

C. int &p=*m;

D. int *p=m;

答案: 请关注公众号【青鸟搜题】查看答案

问题 122: 3. 假定一个数据对象为int*类型,则指向该对象的指针类型为( )。

选项:

A. int

B. int*

C. int**

D. int***

答案: 请关注公众号【青鸟搜题】查看答案

问题 123: 4. 在定义指针变量的语句中,最前面的类型关键字仍然允许是指针类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 124: 5. 在定义指针变量的语句“int *p,**pp;”中,p和pp具有相同的指针类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 125: 1. 假定p是一个指向数据对象的指针,则通过p表示该数据对象为( )。

选项:

A. p*

B. p&

C. &p

D. *p

答案: 请关注公众号【青鸟搜题】查看答案

问题 126: 2. 若p指向x,则与x的等价表示为( )。

选项:

A. p

B. *p

C. *x

D. &x

答案: 请关注公众号【青鸟搜题】查看答案

问题 127: 3. 假定p所指对象的值为25,p+1所指对象的值为42,则表达式*++p的值为42。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 128: 4. 假定p所指对象的值为25,p-1所指对象的值为42,则执行*p--运算后,p所指对象的值为42。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 129: 1. 假定a为一个数组名,则下面表达式中错误的是( )。

选项:

A. a[i]

B. *a++

C. *a

D. *(a+1)

答案: 请关注公众号【青鸟搜题】查看答案

问题 130: 2. 已知“int a[10], x, *pa=a;”,若要把数组a[3]元素的值赋给x,则不正确的语句为( )。

选项:

A. x=pa[3];

B. x=*(a+3);

C. x=a[3];

D. x=*pa+3;

答案: 请关注公众号【青鸟搜题】查看答案

问题 131: 3. 已知“char a[3][5];”,则元素a[2][3]的地址比该数组的首地址大( )。

选项:

A. 13个字节

B. 26个字节

C. 52个字节

D. 48个字节

答案: 请关注公众号【青鸟搜题】查看答案

问题 132: 4. 一个二维数组元素为a[i][j],它的指针访问方式不正确的是( )。

选项:

A. *(a[i]+j)

B. (*(a+i))[j]

C. *a[i]+j

D. *(*(a+i)+j)

答案: 请关注公众号【青鸟搜题】查看答案

问题 133: 5. 在一个函数定义中,函数体的格式是一条复合语句。1. 假定a是一个一维数组,则表达式*(a+i)所对应的元素为a[i]。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 134: 6. 在一个函数定义中,函数体的格式是一条复合语句。1. 假定a是一个一维数组,则表达式*(a+i)所对应的元素为a[i]。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 135: 7. 假定a是一个一维数组,则进行a++运算是允许的。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 136: 8. 已知“int a[3][5]; int(*p)[5]=a;”,则进行p++运算是允许的。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 137: 1. 对于每个进行动态存储分配的函数,其返回值类型为( )。

选项:

A. char

B. char*

C. void

D. void*

答案: 请关注公众号【青鸟搜题】查看答案

问题 138: 2. 已知“int *p=calloc(24,sizeof(int));”,则p所指向的动态内存空间中,能够存储整型元素的个数为( )。

选项:

A. 6

B. 12

C. 58

D. 24

答案: 请关注公众号【青鸟搜题】查看答案

问题 139: 3. 在程序文件中要进行动态存储分配和释放,则需要引入的系统头文件是stdio.h。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 140: 4. 进行动态存储分配的malloc()函数带有一个参数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 141: 1. 一个指针指向一个数据对象,它保存着该数据对象的地址,若数据对象为DataType类型,则该指针的类型为( )。

选项:

A. DataType*

B. DataType

C. DataType&

D. DataType**

答案: 请关注公众号【青鸟搜题】查看答案

问题 142: 2. NULL是一个符号常量,通常作为空指针值,它的取值为( )。

选项:

A. 0

B. 1

C. -1

D. '\n'

答案: 请关注公众号【青鸟搜题】查看答案

问题 143: 3. 若要把一个整型指针p转换为字符指针,则采用的强制转换表达式为( )。

选项:

A. (int*)p

B. (int)*p

C. (char*)p

D. (char*)p

答案: 请关注公众号【青鸟搜题】查看答案

问题 144: 4. 若要定义整型指针p并初始指向x,则所使用的定义语句为( )。

选项:

A. int p=&x

B. int *p=x;

C. int *p=&x;

D. int p=x;

答案: 请关注公众号【青鸟搜题】查看答案

问题 145: 5. 假定p所指对象的值为25,p+1所指对象的值为42,则表达式*p++的值为( )。

选项:

A. 25

B. 42

C. 26

D. 43

答案: 请关注公众号【青鸟搜题】查看答案

问题 146: 6. 假定p是一个指针变量,则该变量的地址表示为( )。

选项:

A. &p

B. *p

C. **p

D. &&p

答案: 请关注公众号【青鸟搜题】查看答案

问题 147: 7. 已知“char *s="Hello world!";”,要使变量p指向s所指向的同一个字符串,则p应定义为( )。

选项:

A. char *p=s;

B. char *p=&s;

C. char *p;p=*s;

D. char *p(s);

答案: 请关注公众号【青鸟搜题】查看答案

问题 148: 8. 假定a为一个数组名,则下面表达式中错误的是( )。

选项:

A. *a++

B. (*a)++

C. a+i

D. *a+i

答案: 请关注公众号【青鸟搜题】查看答案

问题 149: 9. 已知“char b[10]=”12345”, *p=b;”,则*(p+2)的值为( )。

选项:

A. '2'

B. '3'

C. '4'

D. '5'

答案: 请关注公众号【青鸟搜题】查看答案

问题 150: 10. 已知“int a[6][5];”,则元素a[2][4]的地址比该数组的首地址大( )。

选项:

A. 14个字节

B. 56个字节

C. 28个字节

D. 96个字节

答案: 请关注公众号【青鸟搜题】查看答案

问题 151: 11. 要使p指向二维整型数组a[10][20],p应定义为( )。

选项:

A. int *p=a;

B. int **p=a;

C. int *p[20]=a;

D. int(*p)[20]=a;

答案: 请关注公众号【青鸟搜题】查看答案

问题 152: 12. 执行“int *p=malloc(sizeof(double)*2);”语句后得到的动态存储空间的字节数为( )。

选项:

A. 16

B. 8

C. 4

D. 32

答案: 请关注公众号【青鸟搜题】查看答案

问题 153: 13. 利用动态存储分配创建具有10个字节的一维数组空间的正确语句是( )。

选项:

A. char *p=malloc(10,1);

B. char *p=malloc(10);

C. char *p=calloc(5,4);

D. char *p=calloc(10);

答案: 请关注公众号【青鸟搜题】查看答案

问题 154: 14. 在定义指针变量的语句中,对指针变量不允许赋初值。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 155: 15. 在定义指针变量的语句“int *p,pp;”中,p和pp具有相同的数据类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 156: 16. 在语句“typedef int* inPointer;”中,把标识符inPointer定义为int*类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 157: 17. 假定a是一个一维数组,则a+i的值与&a[i]的值相等。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 158: 18. 已知“int a[10], *p=a;”,则进行*p++运算是不允许的。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 159: 19. 假定a是一个二维数组,则表达式*(a[j]+i)所对应的元素为a[i][j]。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 160: 20. 假定a是一个二维数组,则数组名a的值和a[0]的值相等。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 161: 21. 进行动态存储分配的calloc()函数带有一个参数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 162: 22. 用于释放动态存储空间的函数为free,调研它需要带有一个参数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 163: 23. 假定a是一个指针数组,则a+i所指对象的地址比a地址大4*i个字节。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 164: 24. #include void main() { __ int a[8]; __ int s1=0,s2=0,*p; __ printf("请输入8个整数:"); __ for(p=a; p:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 165: 25. #include void main() { __ char a[5][10]={"12345","asde45","wer45t","zxc12","89uy78"}; __ char *p; __ int i,c=0,k=0; __ for(i=0; i<5; i++) { __ p=&a[i][0]; __ while(*p!='\0') { __ if(*p>='0' && *p<='9') k++; __ c++; p++; __ } __ } __ printf("%d %d\n",k,c); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 166: 26. #include #include void main() { __ int i,n,*a; __ do scanf("%d",&n); while(n<2); __ a=calloc(n,sizeof(int)); __ for(i=0; i

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 167: 1. 下面正确的函数原型语句是( )

选项:

A. int Function(void a);

B. void Function (int);

C. int Function(a);

D. void int(double a);

答案: 请关注公众号【青鸟搜题】查看答案

问题 168: 2. 函数调用func(2+x,4*y,5)中所含实参的个数为( )。

选项:

A. 2

B. 3

C. 4

D. 5

答案: 请关注公众号【青鸟搜题】查看答案

问题 169: 3. 在程序的一个文件中定义的函数,若要在另一个文件中调用,则必须在这另一个文件中给出该函数的( )。

选项:

A. 原型语句

B. 参数表

C. 函数名

D. 返回类型

答案: 请关注公众号【青鸟搜题】查看答案

问题 170: 4. 在一个函数定义中,参数表中的参数类型可以为void类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 171: 5. 在一个函数定义中,参数表中的参数定义之间是采用分号分开的。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 172: 6. 在一个函数定义中,函数体是一条复合语句。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 173: 1. 在下面的函数声明语句中存在着语法错误的是( )。

选项:

A. AA(int a, int b)

B. AA(int, int)

C. AA(int a; int b)

D. AA(int a, int)

答案: 请关注公众号【青鸟搜题】查看答案

问题 174: 2. 如果一个函数定义仅允许为所在的程序文件调用,则应在该函数定义的最前面添加的关键字为( )。

选项:

A. static

B. auto

C. default

D. extern

答案: 请关注公众号【青鸟搜题】查看答案

问题 175: 3. 假定一个函数定义为“extern char* f1(char* x){return x;}”,表示该函数作用域的关键字为( )。

选项:

A. extern

B. char*

C. char

D. int

答案: 请关注公众号【青鸟搜题】查看答案

问题 176: 4. 假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a[10],则下面函数调用表达式不正确的是( )。

选项:

A. ff(a)

B. ff(a[0])

C. ff(a+3)

D. ff(&a[0])

答案: 请关注公众号【青鸟搜题】查看答案

问题 177: 5. 假定一个函数原型语句为“int f1(int a[],int n);”,与数组参数等价的表示为( )。

选项:

A. int** a

B. int a

C. int& a

D. int* a

答案: 请关注公众号【青鸟搜题】查看答案

问题 178: 6. 假定一个函数的参数说明为const int a,则在函数体中不能进行的操作是( )。

选项:

A. printf("%d",a)

B. a==0

C. int x=a

D. a=10

答案: 请关注公众号【青鸟搜题】查看答案

问题 179: 7. 在函数体中定义的变量具有( )。

选项:

A. 全局作用域

B. 局部作用域

C. 文件作用域

D. 函数作用域

答案: 请关注公众号【青鸟搜题】查看答案

问题 180: 8. 在函数外定义的变量,若带有作用域关键字static,则它具有( )。

选项:

A. 函数作用域

B. 局部作用域

C. 全局作用域

D. 文件作用域

答案: 请关注公众号【青鸟搜题】查看答案

问题 181: 9. 在函数体中定义一个静态变量时,选用的存储属性关键字为( )。

选项:

A. static

B. extern

C. auto

D. register

答案: 请关注公众号【青鸟搜题】查看答案

问题 182: 10. 假定一个函数原型为“void ff(int a[],int n)”,则对应的函数指针类型为( )。

选项:

A. void (*ff)(int*a,int)

B. int (*ff)(int*a,int)

C. void *ff(int*a,int)

D. *ff(int[],int)

答案: 请关注公众号【青鸟搜题】查看答案

问题 183: 11. 函数定义格式中的参数表被称为实参表。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 184: 12. 函数定义格式中的参数表被称为形参表。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 185: 13. 函数调用参数表中的每个实参可以是表达式。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 186: 14. 对于标识为static属性的变量,若没有对它进行初始化,则默认的初值为0。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 187: 15. 在函数体中定义一个变量时,若不选用任何存储属性关键字进行标识,则它为静态变量。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 188: 16. 在C语言程序中,主函数也可以成为递归函数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 189: 17. 在C语言程序中,除主函数外的任何用户定义的函数都可以是递归函数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 190: 18. void xk9(int x) { __ char a[10]; __ int i=0,rem; __ do { __ rem=x%8; x=x/8; __ a[i]=48+rem;__ //'0'字符的ASCII码为48 __ __i++; __ } while(x!=0); __ while(i>0) printf("%c",a[--i]); __ printf("\n"); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 191: 19. int wr1(int a[], int n, int x) { __ int i; __ for(i=0;i

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 192: 20. void wr4(int a[], int b[], int n) { __ int i; __ b[0]=b[1]=0; __ for(i=0;i

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 193: 21. #include int wr11(int a[], int n, int k) { __ int i,c=0; __ for(i=0;i=k) c++; __ return c; } void main() { __ int a[9]={9,5,7,12,4,8,15,10,15}; __ int c=wr11(a,9,8); __ printf("%d\n",c); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 194: 22. #include int c=15; void main() { __ int a=10, b=20; __ { int b=a+15; printf("%d ",a+b+c);} __ printf("%d\n",a+b+c); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 195: 23. #include void fn2(int* a, int* b) { __ int x=*a; __ *a=*b; *b=x; } void main() { __ int x=15, y=26; __ fn2(&x,&y); __ printf("%d %d\n",x,y); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 196: 24. #include int fn1() { __ int x=0; __ static int y=0; __ x++; y++; __ return x+y; } void main() { __ int x1=fn1(); __ int x2=fn1(); __ printf("%d %d\n",x1, x2); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 197: 25. int ff3(int m, int n, int b) { __ if(m

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 198: 1. 在函数体中把出现调用自身函数的情况称为( )。

选项:

A. 非递归调用

B. 直接递归调用

C. 间接递归调用

D. 末尾递归调用

答案: 请关注公众号【青鸟搜题】查看答案

问题 199: 2. 在函数定义的参数表中,也可以使用函数参数,假定一个函数参数原型为int ff(int),则等价的函数指针说明为( )。

选项:

A. int *ff(int)

B. int ff

C. int *ff

D. int (*ff)(int)

答案: 请关注公众号【青鸟搜题】查看答案

问题 200: 3. 在函数定义中,存在着调用自身函数的函数调用表达式,则称此函数为递归函数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 201: 4. 在递归函数的每次递归调用中,对于参数表中的每个形参,得到的值都相同。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 202: 5. 在C语言程序中,对于递归函数和非递归函数,其函数头部有区别标志。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 203: 1. 假定一个链表中结点的结构类型为“struct AA{int data, struct AA *next;};”,则next数据成员的类型为( )。

选项:

A. struct AA

B. struct AA*

C. AA*

D. int

答案: 请关注公众号【青鸟搜题】查看答案

问题 204: 2. 假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为p->next=f和( )。

选项:

A. p=f->next

B. f=p->next

C. f=p

D. f->next=p提示:答案为C。向表头指针为f的一个链表中插入表头结点p时,应通过p->next=f操作使原表头结点成为p的后继结点,再通过f=p操作使表头指针f指向新插入的表头结点(即p结点)。

答案: 请关注公众号【青鸟搜题】查看答案

问题 205: 3. 在一个链表中,表头结点无前驱结点,表尾结点无后继结点。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 206: 4. 在一个链表中,表尾结点指针域的值为空(NULL)。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 207: 5. 访问一个链表时,必须从表头指针出发,依次访问每个结点。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 208: 6. 假定结构类型为“struct strNode{char name[15]; struct strNode *next;};”,下面函数能够遍历以f为表头指针的单链表,请在横线处填写合适内容。 void xb1(struct strNode* f) {   while(f!=NULL) {     printf("%s ",f->name);     f=   }   printf("\n"); }

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 209: 7. 此程序运行后,得到的输出结果为 。    #include #include struct intNode {int value; struct intNode *next;}; void main(void) {   struct intNode x={32,NULL}, y={45,&x}, *r;   for(r=&y; r!=NULL; r=r->next) printf("%d ",r->value);   printf("\n"); }

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 210: 8. 假定结构类型为“struct strNode{char name[15]; struct strNode *next;};”,下面函数能够建立并返回以f为表头指针的单链表,请在横线处填写合适内容。    struct strNode* xb2() {   struct strNode *f=NULL,*r;   char a[15];   printf("输入每个字符串,用\"-1\"作为结束标志\n");   do {     scanf("%s",a);     if(strcmp(a,"-1")==0) break;     r=malloc(sizeof(struct strNode));     strcpy(r->name,a); r->next=f;   } while(1);   return f; }

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 211: 1. 在结构类型的定义中,对于类型标识符后的定义体,使用的起止标记符是一对( )。

选项:

A. 花括号

B. 圆括号

C. 中括号

D. 尖括号

答案: 请关注公众号【青鸟搜题】查看答案

问题 212: 2. 假定一个结构类型的定义为 “struct A{int a,b; double c;};”,则该类型的长度为( )。

选项:

A. 8

B. 10

C. 12

D. 16

答案: 请关注公众号【青鸟搜题】查看答案

问题 213: 3. 假定一个结构类型的定义为 “struct D{int a; D* next;};”,则该类型的长度为( )。

选项:

A. 4

B. 8

C. 12

D. 16

答案: 请关注公众号【青鸟搜题】查看答案

问题 214: 4. 假定有结构定义“struct Book{char title[20]; double price;};”,则不正确的语句定义为( )。

选项:

A. struct Book a[5]

B. struct Book b=("C++ Programming",27.0)

C. struct Book* c[10]

D. struct Book d[2][3]

答案: 请关注公众号【青鸟搜题】查看答案

问题 215: 5. 假定有结构定义“struct Book{char title[20]; double price;};”,则正确的语句定义为( )。

选项:

A. struct Book *x=calloc(6*sizeof(struct Book));

B. struct Book *x=calloc(6,sizeof(struct Book));

C. struct Book *x=malloc(6,sizeofstruct (Book));

D. struct Book *x=malloc(6*sizeof(struct Book *));

答案: 请关注公众号【青鸟搜题】查看答案

问题 216: 6. 假定要访问一个结构指针变量x中的数据成员a,则表示方法为( )。

选项:

A. a

B. x->a

C. x(a)

D. x{a}

答案: 请关注公众号【青鸟搜题】查看答案

问题 217: 7. 与结构成员访问表达式p->name等价的表达式为( )。

选项:

A. name

B. (*p).name

C. *p.name

D. *(p->name)

答案: 请关注公众号【青鸟搜题】查看答案

问题 218: 8. 在一个链表中,每个结点必然存在着一个指向自身结点类型的指针域,用来保存下一个结点的( )。

选项:

A. 地址

B. 值

C. 名称

D. 类型

答案: 请关注公众号【青鸟搜题】查看答案

问题 219: 9. 假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为( )。

选项:

A. p->next=f

B. p->next=f和f=p

C. f=p->next

D. f->next=p和f=p

答案: 请关注公众号【青鸟搜题】查看答案

问题 220: 10. 假定一个联合类型的定义为 “union D{int a; D* next;};”,则该类型的长度为( )。

选项:

A. 4

B. 8

C. 12

D. 16

答案: 请关注公众号【青鸟搜题】查看答案

问题 221: 11. 在同一个结构类型的定义中,各数据成员名必须不同。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 222: 12. 在结构类型的定义中,其中的数据成员可以是本身类型的指针对象。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 223: 13. 在结构类型的定义中,不允许出现结构类型不完整的超前定义。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 224: 14. 定义结构类型的同时能够定义它的变量。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 225: 15. 定义结构类型的变量时,能够用同类型的其他变量进行初始化,不能用数据表进行初始化。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 226: 16. 使用结构类型时,必须一起使用关键字struct和类型标识符。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 227: 17. 在一个链表中,表头结点和表尾结点均无后继结点。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 228: 18. 在一个链表中,若表头指针的值非空,则表头和表尾结点必然不是同一个结点。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 229: 19. 在C语言中,一个结构类型的长度等于所含的所有数据成员类型长度的最大值。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 230: 20. int xb3(struct intNode *f) { __ int x=0; __ while(f!=NULL) { __ if(f->data>x) x= ; __ f=f->next; __ } __ return x; }

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 231: 21. struct intNode* xb5(int n) { __ struct intNode *f, *p; __ if(n==0) return NULL; __ f=p=malloc(sizeof(struct intNode)); __ printf("从键盘输入 %d 个整数: ",n); __ while(n--) { __ scanf("%d",&(p->data)); __ if(n==0) {p->next=NULL; break;} __ p->next=malloc(sizeof(struct intNode)); __ p=p->next; __ } __ ; }

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 232: 22. #include #include struct Worker {char name[15]; int age; int pay;}; void main() { __ struct Worker x,*p=&x; __ strcpy(x.name,"weirong"); __ x.age=35; x.pay=2600; __ p->age+=12; p->pay+=1200; __ printf("%s %d\n",p->name,x.age); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 233: 23. #include struct AAA {int a[6]; int n;}; struct AAA x; void main(void) { __ int i; __ int b[6]={20,35,46,18,24,52}; __ x.n=6; __ for(i=0; i

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 234: 24. #include struct Worker {char name[15]; int age; int pay;}; int xh2(struct Worker a[], int n) { __ int i, x=a[0].pay; __ for(i=1; ix) x=a[i].pay; __ return x; } void main() { __ struct Worker a[4]={{"abc",25,420},{"defa",58,638}, __ __{"ghin",49,560},{"jklt",36,375}}; __ printf("%d\n",xh2(a,4)); } 答案:

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 235: 1. 若一个文本文件的长度为n-1,当以"r"方式打开时,其读文件指针初始指向的字节位置编号为( )。

选项:

A. 0

B. 1

C. n-1

D. n

答案: 请关注公众号【青鸟搜题】查看答案

问题 236: 2. 从一个文本文件中读取一个字符的系统函数为( )。

选项:

A. fputc()

B. fgets()

C. fputs()

D. fgetc()

答案: 请关注公众号【青鸟搜题】查看答案

问题 237: 3. 从文本文件中输入数据时,需要调用系统函数fputs()或fgets()。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 238: 4. 若对一个文本文件以"r"方式打开时,则称该文本文件为输出文件。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 239: 5. 下面函数的功能是求出并返回文本文件的长度,即所包含的字符个数。该文本文件名为参数fname所指向的字符串。请在横线处填写合适内容。 int xw3(char* fname) {   FILE *fin=fopen(fname,"r");   char ch;   int c=0;   while(1) {     ch=fgetc(fin);     if(ch!=EOF)     else break;   }   fclose(fin);   return c; }

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 240: 1. 假定有“struct BOOK{char title[40]; float price;}; struct BOOK book;”,则不正确的语句为( )。

选项:

A. struct BOOK *x=malloc(book);

B. struct BOOK x={"C++ Programming",27.0};

C. struct BOOK *x=malloc(sizeof(struct BOOK));

D. struct BOOK *x=&book;

答案: 请关注公众号【青鸟搜题】查看答案

问题 241: 2. 在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是( )。

选项:

A. 句点

B. 冒号

C. 分号

D. 逗号

答案: 请关注公众号【青鸟搜题】查看答案

问题 242: 3. 假定一个结构类型的定义为 “struct A{int a,b; double c;};”,则该类型的长度为( )。

选项:

A. 8

B. 10

C. 12

D. 16

答案: 请关注公众号【青鸟搜题】查看答案

问题 243: 4. 假定一个结构类型的定义为 “struct D{int a; D* next;};”,则该类型的长度为( )。

选项:

A. 4

B. 8

C. 12

D. 16

答案: 请关注公众号【青鸟搜题】查看答案

问题 244: 5. 假定要访问一个结构指针变量x中的数据成员a,则表示方法为( )。

选项:

A. a

B. x->a

C. x(a)

D. x{a}

答案: 请关注公众号【青鸟搜题】查看答案

问题 245: 6. 假定一个链表的表头指针为f,结点中包含有data和next域,则向该链表的表头插入一个地址为p的结点时,应执行的操作为( )。

选项:

A. p->next=f

B. p->next=f和f=p

C. f=p->next

D. f->next=p和f=p

答案: 请关注公众号【青鸟搜题】查看答案

问题 246: 7. 标准输入设备键盘的文件流标识符是( )。

选项:

A. stdin

B. stdout

C. stderr

D. stdio

答案: 请关注公众号【青鸟搜题】查看答案

问题 247: 8. 表示文件结束符的符号常量为( )。

选项:

A. eof

B. Eof

C. EOF

D. feof

答案: 请关注公众号【青鸟搜题】查看答案

问题 248: 9. C语言中打开一个数据文件的系统函数为( )。

选项:

A. fgetc()

B. fputc()

C. fclose()

D. fopen()

答案: 请关注公众号【青鸟搜题】查看答案

问题 249: 10. 从一个数据文件中读入以换行符结束的一行字符串的系统函数为( )。

选项:

A. gets()

B. fgets()

C. getc()

D. fgetc()

答案: 请关注公众号【青鸟搜题】查看答案

问题 250: 11. 向一个二进制文件中写入信息的函数fwrite()带有的参数个数为( )。

选项:

A. 1

B. 2

C. 3

D. 4

答案: 请关注公众号【青鸟搜题】查看答案

问题 251: 12. 在C语言中,为只写操作打开一个文本文件的方式为( )。

选项:

A. "a"

B. "r+"

C. "r"

D. "w"

答案: 请关注公众号【青鸟搜题】查看答案

问题 252: 13. 在结构类型的定义中,其中的数据成员可以是本身类型的直接对象。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 253: 14. 在结构类型的定义中,允许出现结构类型不完整的超前定义。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 254: 15. 定义结构类型的变量时,不能够同时进行初始化。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 255: 16. 使用一个结构类型时,必须一起使用关键字struct和类型标识符。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 256: 17. 假定一个结构类型的定义为 “struct A{int a,b; A* c;};”,则该类型的长度为12。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 257: 18. 假定一个结构类型的定义为 “struct B{int a[5]; char* b;};”,则该类型的长度为20。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 258: 19. 执行calloc(n,8)函数调用时,将动态分配得到8*n个字节的存储空间。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 259: 20. 执行malloc(sizeof(struct BB))函数调用时,得到的动态存储空间能够保存具有struct BB结构类型的一个对象。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 260: 21. 假定要访问一个结构对象x中的由a指针成员所指向的对象,则表示方法为x.a。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 261: 22. 假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为p->b。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 262: 23. 与结构成员访问表达式(*fp).score等价的表达式是fp->score。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 263: 24. 在C语言中,对二进制文件的所有不同打开方式共有6种。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 264: 25. C语言中的标准输入和输出设备文件都属于字符文件。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 265: 26. 在一个磁盘数据文件的文件名中,文件主名和扩展名都是必须的,不可省略。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 266: 27. 在数据文件打开方式字符串中,字符r、w和a具有确定的含义,分别代表读、写和追加方式。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 267: 28. 一个磁盘数据文件的文件名由文件主名和扩展名所组成,其中间用圆点分开。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 268: 29. C语言系统中提供一个用来描述文件属性的类型标识符为FILE。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 269: 30. 每次只能向文本文件中写入一个字符,不能一次写入一个字符串。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 270: 31. 对二进制文件进行读和写操作将使用相同的系统函数。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 271: 32. 在C语言中,系统函数fseek()用来移动数据文件中的文件位置指针。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 272: 1. 在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为( )。

选项:

A. main

B. MAIN

C. name

D. function

答案: 请关注公众号【青鸟搜题】查看答案

问题 273: 2. 每个C语言程序文件的编译错误分为( )类。

选项:

A. 1

B. 2

C. 3

D. 4

答案: 请关注公众号【青鸟搜题】查看答案

问题 274: 3. 字符串"a+b=12\n"的长度为( )。

选项:

A. 6

B. 7

C. 8

D. 9

答案: 请关注公众号【青鸟搜题】查看答案

问题 275: 4. 在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为( )语句。

选项:

A. for

B. if

C. do

D. while

答案: 请关注公众号【青鸟搜题】查看答案

问题 276: 5. 在下面的do-while循环语句中,其循环体语句被执行的次数为( )。 int i=0; do i++; while(i<10);

选项:

A. 4

B. 3

C. 5

D. 10

答案: 请关注公众号【青鸟搜题】查看答案

问题 277: 6. 将两个字符串连接起来组成一个字符串时,选用的函数为( )。

选项:

A. strlen()

B. strcap()

C. strcat()

D. strcmp()

答案: 请关注公众号【青鸟搜题】查看答案

问题 278: 7. 若用数组名作为函数调用的实参,传递给形参的是( )。

选项:

A. 数组的首地址

B. 数组中第一个元素的值

C. 数组中全部元素的值

D. 数组元素的个数

答案: 请关注公众号【青鸟搜题】查看答案

问题 279: 8. 假定a为一个整数类型的数组名,整数类型的长度为4,则元素a[4]的地址比a数组的首地址大( )个字节。

选项:

A. 4

B. 8

C. 16

D. 32

答案: 请关注公众号【青鸟搜题】查看答案

问题 280: 9. 假定s被定义为指针类型char *的变量,初始指向的字符串为"Hello world!",若要使变量p指向s所指向的字符串,则p应定义为( )。

选项:

A. char *p=s;

B. char *p=&s;

C. char *p;p=*s;

D. char *p; p=&s;

答案: 请关注公众号【青鸟搜题】查看答案

问题 281: 10. 从一个数据文件中读入以换行符结束的一行字符串的函数为( )。

选项:

A. gets()

B. fgets()

C. getc()

D. fgetc()

答案: 请关注公众号【青鸟搜题】查看答案

问题 282: 11. C语言中的每条简单语句以 作为结束符。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 283: 12. C程序中的所有预处理命令均以 字符开头。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 284: 13. 当不需要函数返回任何值时,则应使用 标识符来定义函数类型。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 285: 14. 十进制数25表示成符合C语言规则的十六进制数为 。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 286: 15. 假定不允许使用逻辑非操作符,则逻辑表达式a>b || b==5的相反表达式为 。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 287: 16. 执行“typedef int DataType;”语句后,在使用int定义整型变量的地方也可以使用 来定义整型变量。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 288: 17. 假定一维数组的定义语句为“char* a[8];”,则该数组a所占存储空间的字节数为 。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 289: 18. 假定二维数组的定义语句为“double a[M][N];”,则该数组a的列下标的取值范围在0到 之间。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 290: 19. 存储一个空字符串需要占用 个字节。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 291: 20. strcpy函数用于把一个字符串 到另一个字符数组空间中。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 292: 21. 程序的编译单位是一个 。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 293: 22. 假定a是一个一维数组,则a[i]的指针访问方式为 。

选项:

答案: 请关注公众号【青鸟搜题】查看答案

问题 294: 23. 执行int *p=malloc(sizeof(int))操作得到的一个动态分配的整型对象为 。

选项:

答案: 请关注公众号【青鸟搜题】查看答案



    文章说明
    本文标签:
    ©版权声明
    本站提供的试卷、试题及解析仅用于学习与练习,严禁用于商业用途或非法传播,违规者需自行承担全部后果。所有内容均收集自网络,版权争议与本站无关。请于下载后 24 小时内删除,若需长期使用,建议通过正规渠道获取正版资源。如遇侵权问题,请及时邮件联系处理,感谢配合!
    评论留言

    昵称

    邮箱

    地址

    个人资料
    个人资料
    四川开放电大作业试卷题库网
    • 文章11830
    • 评论0
    • 微语0
    标签