欢迎光临,有需要请联系站长!
想要快速找到正确答案?
立即关注 超新尔雅学习通微信公众号,轻松解决学习难题!
作业辅导
扫码关注
论文指导
轻松解决学习难题!
中国大学MOOC程序设计基础——C语言作业答案
程序设计基础——C语言
学校: 九八五题库
学校: 超星学习通
题目如下:
1. 1. 下列有关算法的描述正确的是()
A. 流程图是一种描述算法的常用方法
B. 解决问题的算法是唯一的
C. 算法都不必在有限步骤内实现
D. 算法都至少包含一条输入指令
答案: 流程图是一种描述算法的常用方法
2. 2. 下面关于算法的描述正确的是( )
A. 一个算法只能有一个输入
B. 算法只能用框图来表示
C. 一个算法的执行步骤可以是无限的
D. 一个完整的算法,不管用 什么方法来表示,都至少有一个输出结果
答案: 一个完整的算法,不管用 什么方法来表示,都至少有一个输出结果
3. 3. 以下选项中,不属于C语言结构化程序设计三种基本结构的是()。
A. 选择结构
B. 顺序结构
C. 递归结构
D. 循环结构
答案: 递归结构
4. 4. 下列变量定义合法的是( )
A. short _a=1.1e-1;
B. double b=1+5e2.5;
C. long do=0xfdaL;
D. float 2_and=1-e-3;
答案: short _a=1.1e-1;
5. 5. 若定义变量如下 :short x; 则x能存储数据的最小值与最大值分别是( )
A. -128,127
B. -32768,32767
C. 0,65535
D. -2147483648,2147483647
答案: -32768,32767
6. 6. 下列语句的输出结果是( ) short int i=65535; printf("%d",i);
A. 65535
B. 0
C. -1
D. 语法出错
答案: -1
7. 7. 1000001 的十进制数是多少
A. 65
B. 55
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
8. 8. 在C语言中,不合法的整型常量是( )
A. 0L
B. 498261
C. 0431278
D. 0xa34b5
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
9. 9. 下列字符串是合法标识符的是( )
A. _MK
B. +9_student。。。
C. 8-long
D. $123.4
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
10. 10. 设a和b均为double型常量,且a=5.5,b=2.5,则表达式(int)a+b/b的值是( )
A. 6.5
B. 7
C. 5.5
D. 6.0
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
11. 11. 以下选项中不属于C语言类型的是( )
A. signed short int
B. unsigned char
C. signed long
D. long short
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
12. 12. 在C语言中,要求运算量必须是整数的运算符是( )
A. *
B. +
C. -
D. %
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
13. 13. 下面关于算法特性正确的是( )
A. 有穷性
B. 确定性
C. 有零个或多个输入
D. 有零个或多个输出
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
14. 14. 下列说法正确的是( )
A. 算法是程序设计的灵魂,由此可见算法的重要地位
B. 简单的说,算法就是解决问题的方法和步骤
C. 著名的计算机科学家沃思指出“算法+数据结构=程序”
D. 一个问题的算法只能用一种程序设计语言实现
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
15. 15. 结构化程序设计方法有哪些( )
A. 自顶向下
B. 逐步细化
C. 模块化设计
D. 结构化编码
E. 顺序编码
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
16. 16. A的ASCII码值
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
17. 17. C语言中,float型变量在内存占用的字节数是______________
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
18. 18. C语言中,char型变量在内存占用的字节数是______________
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
19. 19. 已知:x=2.5,a=7,y=4.7,则x+a%3*(int)(x+y)%2/4的值为 ______________。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
20. 20. 若a为int型,a=3,则a+=a-=a*a的值为_________________。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
21. 1. 有下列语句: int x=1234; printf(“%2d\n”,x); 输出结果为:
A. 34
B. 1234
C. 12
D. 错误,无法正常输出
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
22. 2. 设a和b均为double型变量,且a=5.5,b=2.5,则表达式(int)a+b/b的值是( )
A. 6.0
B. 7
C. 6.5
D. 5.5
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
23. 3. 下列运算符中优先级最高的是( )
A. &&
B. !=
C. +
D. <
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
24. 4. 在下面的语句中,错误的赋值语句是( )
A. a=a
B. a=(b=(c=2,d=3));
C. i=i+1;
D. a=a/b=2;
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
25. 5. 下面程序编译时无错误,运行程序时,从键盘输入1,2,但输出结果不正确。 #include int main() { int x,y; scanf("%d, %d", x,y); printf("%d, %d", x,y); return 0; } 找出错误,并改写出正确的语句
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
26. 6. f是float变量,要求输出f的数据至少占9个字符位置,保留3位小数,则printf("___________",f)中正确的格式字符串是:
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
27. 7. 写出下面程序的运行结果 #include int main(){ int a; char c=10; float f=100.0; double x; a=f/=c*=(x=6.5); printf("%d,%d,%3.1f,%3.1f\n",a,c,f,x); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
28. 8. 写出下列程序的结果: #include int main (void) { int a = 10,b = 4; float c=4.0; printf ("%d\n",a/b); printf ("%f\n", a/c); return 0; } 第一行:———— 第二行:————
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
29. 9. 运行下面程序时从键盘输入1234567<回车>,则输出结果为( ) #include int main(){ int a=1,b; scanf("%2d%2d",&a,&b); printf("%d %d\n",a,b); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
30. 10. 写出下面程序的运行结果: #include int main(){ int a=65535; short b; b=a+1; printf("%d %d\n",a,b); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
31. 11. 在printf函数中,格式说明与输出项的个数必须相同,如果格式符的个数小于输出项的个数,多余的输出项将不予输出。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
32. 12. 赋值运算符,它的作用是把一个值保存到一个变量中
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
33. 13. 算术运算符优先级高于关系运算符
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
34. 14. sacnf()中的变量必须使用变量地址,而不是变量名
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
35. 15. %#o表示变量的值以八进制输出,其中#的作用是在八进制数前输出一个数字0
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
36. 16. 求余运算符%是计算被除数除以除数后的余数,这个运算符要求两个运算量必须是整数
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
37. 17. #include int main(){ printf("%d,%d\n",1/2,3/4); printf("%f,%f\n",1/2,3/4); printf("%f,%f\n",1.0/2,3/4.); } 执行结果为
A. 0,0 0.000000,0.000000 0.500000,0.750000
B. 0.5,0.75 0.500000,0.750000 0.500000,0.750000
C. 0,0 0.500000,0.750000 0.500000,0.750000
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
38. 18. 有定义语句“int x,y”,若要通过scanf(“x=%d,y=%d”,&x,&y);语句使变量x得到数值11,变量y得到数值12,下面4组输入形式中,正确的是( )
A. 11 12
B. x=11 y=12
C. 11,12
D. x=11,y=12
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
39. 19. 若a为int型,a=3,则a+=a-=a*a的值为_________________。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
40. 1. 下列表达式中,值为0的表达式是
A. 3!=0
B. 3!=3>4
C. 3>4==0
D. 6>5>4
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
41. 2. 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为
A. 0
B. 1
C. 2
D. 3
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
42. 3. 能正确表示“当x的取值在[1,10]范围内为真,否则为假”的表达式是( )
A. 1<=x<=10
B. x>=1||x<=10
C. x>=1&&x<=10
D. x>=1,x<=10
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
43. 4. 下列运算符中优先级最高的是( )
A. <
B. +
C. &&
D. !=
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
44. 5. 设整型变量x、y、z的值分别为3、2、1,则下列程序段的输出是 if(x>y) x=y; if(x>z) x=z; printf("%d,%d,%d\n",x,y,z);
A. 3,2,1
B. 1,2,3
C. 1,2,1
D. 1,1,1
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
45. 6. 已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是 if(x>y) z=x; x=y; y=z;
A. x=10, y=20, z=30
B. x=20, y=30, z=30
C. x=20, y=30, z=10
D. x=20, y=30, z=20
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
46. 7. 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与( )配对
A. 任意if
B. 其之前最近的if
C. 其之后的最近的if
D. 同一行上的if
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
47. 8. 以下不正确的语句为( )
A. if(x>y) ;
B. if(x=y)&&(x!=0) x+=y;
C. if(x!=y) scanf(“%d”,&x);else scanf(“%d”,&y);
D. if(x
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
48. 9. 运行程序,从键盘输入48,写出下面程序的输出结果。 #include void main() { int a; scanf(“%d”,&a); if(a>50) printf(“%d ”,a); if(a>40) printf(“%d ”,a); if(a>30) printf(“%d ”,a); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
49. 10. 若a=6,b=4,c=2则表达式 !(a-b)+c-1&&b+c/2的值_________________
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
50. 11. 若运行时输入:3 5/<回车>,则以下的运行结果是。 #include int main() { float x,y;char o;double r; scanf("%f %f %c",&x,&y,&o); switch(o) { case '+':r=x+y;break; case '-':r=x-y;break; case '*':r=x*y;break; case '/ ':r=x/y;break; } printf("%f",r); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
51. 12. 输入一个实数,输出其绝对值。 #include int main() { float x; printf("请输入一个实数:"); scanf("%f",&x); if(___________________) x=-x; printf("The absolute value is%f\n",x); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
52. 13. 以下程序的运行结果是 #include int main() { int a,b,c,s,w,t; s=w=t=0; a=-1;b=3;c=3; if(c>0) s=a+b; if(a<=0) { if(b>0) if(c<=0) w=a-b;} else if(c>0) w=b-a; else t=c; printf("%d %d %d",s,w,t); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
53. 14. 运行以下程序,输入5,则程序输出的结果是 #include int main() { int x,y=1; scanf("%d",&x); switch(x+1) { case 5:y++; case 6:y+=2; case 7:y+=3; default:y+=4; } printf("%d",y); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
54. 15. 参加逻辑运算的运算量可以是任何类型的数据,如果参加逻辑运算的运算量不是一个逻辑量,则非零值代表真,零值代表假。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
55. 16. a==b
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
56. 17. switch语句中case后的表达式可以是任意类型
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
57. 18. 可以用“=="运算符判断两个实数是否相等
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
58. 19. 以下程序的运行结果是( ) #include int main() { int k=4,a=3,b=2,c=1; printf(“%d\n”,k
A. 4
B. 3
C. 2
D. 1
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
59. 20. 请阅读以下程序 #include int main() { int a=5,b=0,c=0; if(a=b+c) printf(“***\n”); else printf(“$$$\n”); return 0; } 以上程序( )
A. 有语法错不能通过编译
B. 可以通过编译但不能通过连接
C. 输出***
D. 输出$$$
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
60. 1. 下面的程序的运行结果是( ) #include int main() { int i=0,sum=0; while(i++<6) sum+=i; printf("%d",sum); return 0; }
A. 15
B. 不确定
C. 21
D. 16
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
61. 2. 下面程序的运行结果是( )。 #include int main() { int x=3; do { printf("%3d",x-=2) ; }while(!(--x)) ; }
A. 1
B. 死循环
C. 1 -2
D. 10
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
62. 3. 下面程序的运行结果是( ) #include int main() {int y=10; while(y>0) { if(y%3==0) printf("%d",--y); y--; } return 0; }
A. 741
B. 852
C. 789
D. 963
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
63. 4. C语言中while和do-while循环的主要区别是( )
A. do-while的循环体至少无条件执行一次
B. do-while允许从外部转到循环体内
C. do-while的循环体不能是复合语句
D. while的循环控制条件比do-while 的循环控制条件严格
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
64. 5. 设有程序段 int k=10; while(k=10) k=k-1; 则下面描述中正确的是( )
A. 循环体语句执行一次
B. while循环执行10次数
C. 循环是无限循环
D. 循环体语句一次也不执行
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
65. 6. 下面程序的运行结果是( ) #include int main() { int i,j,x=0; for(i=0;i<2;i++) {x++; for(j=0;j<=3;j++) {if(j%2) continue; x++;} x++; } printf("x=%d\n",x); return 0; }
A. x=8
B. x=6
C. x=4
D. x=12
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
66. 7. 在for(表达式1;表达式2;表达式3)语句中,表达式2在任何情况下不允许省略。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
67. 8. break语句能够结束整个循环,而continue语句能够结束本次循环
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
68. 9. while语句与do-while语句的作用是完全一样的
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
69. 10. 执行下面的程序后运算结果是( ) #include int main() { int a,b; for(a=1,b=1;a<=100;a++) { if(b>=20) break; if(b%3==1) { b+=3; continue; b-=5; } } printf("%d",a); }
A. 10
B. 9
C. 7
D. 8
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
70. 11. 下面的程序是求0~100自然数中偶数之和,完成并调试该程序。 #include int main() {int sum=0, i=0; while( ) {sum=sum+i; ; } printf("sum=%d\n", sum); return 0;}
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
71. 12. 要求:输入10个实数,用选择法由小到大排序 #include int main() { int i, j, n, t, a[10]; for(i=0; i<10; i++) scanf("%d", &a[i]); for(i=0; ___________; i++) { n=i; for(j=i+1;__________; j++) if(a[j]
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
72. 13. 以下程序的功能是计算s=1+1/2!+1/3 ! +1/4 !+…+1/n! ,请填空。 #include int main( ) { double s=0.0,fac=1.0; int i,n; scanf(“%d”,&n); for(i=1,i<=n;i++) { fac=fac * ___________; s=_____________; } printf(“s=%lf”,s); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
73. 14. 执行下列程序的输出结果是。 #include int main() { int m,n; for(m=11;m>10;m--) { for(n=m;n>9;n--) if(m%n)break; if(n<=m-1) printf("%d",m); } return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
74. 15. 计算两个非负整数的最大公约数。 #include int main (void) { int m, n,u,v,remainder; printf ("请输入两个非负整数:"); scanf ("%d%d", &m, &n); u=m,v=n; while ( v != 0 ) { _____________________ = u % v; ______________________= v; ______________________ = remainder; } printf ("%d和%d的最大公约数是%d\n", m,n,u); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
75. 1. 若用数组名作为函数调用的实参,传递给形参的是( )
A. 数组元素的个数
B. 数组第一个元素的值
C. 数组中全部元素的值
D. 数组的首地址
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
76. 2. 凡是函数中未指定存储类别的局部变量,其隐含的存储类别为
A. 外部(extern)
B. 寄存器(register)
C. 静态(static)
D. 自动(auto)
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
77. 3. 在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是
A. auto
B. register
C. extern
D. static
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
78. 4. 以下说法不正确的是( )
A. 形式参数是局部变量
B. 在不同函数中可以使用相同名字的变量
C. 在函数内的复合语句中定义的变量在本函数范围内有效
D. 在函数内定义的变量只在本函数范围内有效
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
79. 5. 以下叙述中正确的是______。
A. 函数的形参都属于全局变量
B. 未在定义语句中赋初值的auto变量和static变量的初值都是随机值
C. 静态(static)类别变量的生存期贯穿于整个程序的运行期间
D. 全局变量的作用域一定比局部变量的作用域范围大
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
80. 6. 以下程序是将3阶矩阵转置,则函数convert的形参错误的是( )。 #include void convert(________________) { int i,j,t; for(i=0;i<3;i++) for(j=i+1;j<3;j++) { t=array[i][j]; array[i][j]=array[j][i]; array[j][i]=t; } } int main() { int i,j,a[3][3]; printf("input the data of array:\n"); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); convert(a); printf("the result is:\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%5d",a[i][j]); printf("\n"); }
A. int array[][3]
B. int array[4][3]
C. int array[3][3]
D. int array[3][]
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
81. 7. 以下程序的运行结果是( ): #include int x=3; void cude() { x=x*x*x; } int main() { x=5; cude(); printf("%d\n",x); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
82. 8. 以下程序的输出结果是( ) #include f(int b[],int m,int n) { int i,s=0; for(i=m;i
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
83. 9. 以下程序的运行结果是: #include int a=5, b=7; int plus(int x,int y) { int z; z=x+y; return(z); } int main() { int a=4,b=5,c; c=plus(a,b); printf("a+b=%d\n",c); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
84. 10. 以下程序的运行结果是( ) #include int x1=30,x2=40; void sub(int x,int y) { x1=x;x=y;y=x1; } int main() { int x3=10,x4=20; sub(x3,x4); sub(x2,x1); printf("%d,%d,%d,%d\n",x1,x2,x3,x4); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
85. 11. 以下程序运行结果是( ) #include int a=5; int fun(int b) { static int a=10; a+=b++; printf("%d\n",a); } int main() { int c=20; fun(c); a+=c++; printf("%d\n",a); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
86. 12. 下列程序的运行结果是( ) #include int fun(int num) { num++; } int main() { int a[3]={1,2,3},i; for(i=0;i<3;i++) { fun(a[i]); printf("%d ",a[i]); } }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
87. 13. 下列程序的运行结果是( ) #include int fun(int num[]) { int i; for(i=0;i<3;i++) num[i]++; } int main() { int a[3]={1,2,3},i; for(i=0;i<3;i++) { fun(a); for(i=0;i<3;i++) printf("%d ",a[i]); } }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
88. 14. 用数组名做实参时,实参和形参在内存中是占用相同的内存单元的
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
89. 15. 局部变量的的生存期与函数调用共存亡,也就是说当函数调用结束,局部变量所占用的内存单元会释放。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
90. 16. 寄存器变量的作用域和生存期与自动变量是相同
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
91. 1. 变量的指针,其含义是指该变量的( )
A. 名
B. 值
C. 一个标志
D. 地址
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
92. 2. 有如下的程序段,执行该段程序后,a的值为( )。 int *p,a=10,b=1; p=&a; a=*p+b;
A. 10
B. 编译出错
C. 12
D. 11
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
93. 3. 下面程序的输出结果是( )。 int main() { char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5; printf("%d",*--p); }
A. 5
B. a[4]的地址
C. 非法
D. 3
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
94. 4. 若有语句int a,*p=&a;,则以下输入语句正确的是( )
A. scanf("%d",&p);
B. scanf("%d",a);
C. scanf("%d",p);
D. scanf("%d",*p);
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
95. 5. 若有语句int a,*p;,并希望p指向变量a,则以下语句正确的是( )
A. p=&a;
B. &p=a;
C. p=*a;
D. p=a;
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
96. 6. 若定义int t[3][2];,能正确表示t数组元素地址的表达式是( )
A. t[1]
B. &t[3][2]
C. *t[2]
D. t[3]
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
97. 7. 以下程序执行后的输出结果是( ) #include void fun(int *b,int i,int j) { int t; if(i { t=b[i];b[i]=b[j];b[j]=t; fun(b,++i,--j); } } int main() { int a[]={1,2,3,4,5,6},i; fun(a,0,5); for(i=0;i<6;i++) printf("%d ",a[i]); return 0; }
A. 1 2 3 4 5 6
B. 6 5 4 3 2 1
C. 4 3 2 1 5 6
D. 4 5 6 1 2 3
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
98. 8. 输出数组中的全部元素(指针法) #include void main() { int nums[10], i, *p; ______________ = nums; for (i=0; i<10;i++) { *p = i*i; printf("nums[%d]=%d\n", i, *p); p=p+____________; } }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
99. 9. 若定义“int a=511,*b=&a;”,则printf("%d\n",*b);的输出结果为( )
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
100. 10. 下列程序的运行结果是( ) #include int main() { int a[4][4]={{10,2,3,4},{51,6,7,8},{9,10,11,12},{1,14,15,16}},(*p)[4],i; p=a; printf("%d",*(p+2)-*(p+1)); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
101. 11. 以下程序运行后的结果是( ) #include int *f(int *x,int *y) { if(*x<*y) return x; else return y; } int main() { int a=7,b=8,*p,*q,*r; p=&a;q=&b; r=f(p,q); printf("%d,%d,%d",*p,*q,*r); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
102. 1. 在C语言中,如果有一个指向字符的指针p,那么*p表示什么?
A. 指针p的值
B. 指针p的类型
C. 指针p所指向的字符
D. 指针p的地址
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
103. 2. 在C语言中,如果有一个指向字符串的指针p,那么p+1表示什么?
A. 指针p的类型
B. 指针p所指向的下一个字符
C. 指针p的下一个地址
D. 指针p的值加1
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
104. 3. 以下不能正确进行字符串赋初值的是( )
A. char str[]="good!";
B. char str[5]={'g','o','o','d'};
C. char str[5]="good!";
D. char *str="good!";
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
105. 4. 以下程序执行后的输出结果是( ) main() { char str[]="xyz",*ps=str; while(*ps) ps++; for(ps--;ps-str>=0;ps--) puts(ps); }
A. z yz xyz
B. yz xyz
C. z yz
D. x xy
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
106. 5. 在说明语句int *f();中,标识符f代表的是( )
A. 一个用于返回值为指针型的函数名
B. 一个用于指向整型数据的指针变量
C. 一个用于指向一维数组的行指针
D. 一个用于指向函数的指针变量
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
107. 6. 若有以下说明和定义 func(int *c){...........} main() { int (*a)()=func,*b(),w[10],c; ... } 在心要的赋值之后,对func函数正确的调用语句是( )
A. b=*b(w);
B. func(b);
C. (*a)(&c);
D. a=a(w);
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
108. 7. 以下函数的返回值是( ) char *fun(char *p) { return (p); }
A. 一个临时存储单元的地址
B. 形参p自身的地址值
C. 形参p中存放的地址值
D. 无确切值
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
109. 8. 在C语言中,可以通过指针将一个函数的地址传递给另一个函数。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
110. 9. 在C语言中,指针可以用来传递函数的参数。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
111. 10. 下列程序的输出结果是( ) int main() { char *s="bigworld"; printf("%s",s+3); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
112. 11. 设函数findbig已定义为求3个数中的最大值,以下程序将利用函数指针调用findbig函数,请填空。 main() { int findbig(int,int,int); int (*f)(),x,y,z,big; f=____________; scanf("%d%d%d",&x,&y,&z); big=(*f)(x,y,z); printf("big=%d\n",big); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
113. 1. 在C语言中,多重指针是指什么?
A. 一个指针指向另一个指针
B. 一个指针指向一个数组
C. 一个指针指向一个结构体
D. 一个指针指向一个函数
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
114. 2. 在C语言中,如何正确地声明一个指向指针的指针?
A. int p;
B. int *p;
C. int ***p;
D. int **p;
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
115. 3. 下列程序的输出结果是( ) #include int main() { int a[3][3]={{1,2},{5,6},{8,9}}; int i,*p[3]; for(i=0;i<3;i++) p[i]=a[i]; printf("%d",*(p[0]+1)+*(p[1]+1)+*(p[2]+1)); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
116. 4. 当使用指针数组时,如果指针数组名为p,那么p[i]表示的是第i+1个元素的地址,而*(p+i)表示的是第i+1个元素的______。
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
117. 1. 以下正确的函数定义形式是( )
A. double fun(int x;y)
B. double fun(int x;int y)
C. double fun(int x,y);
D. double fun(int x,int y)
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
118. 2. C语言规定,简单变量做实参时,它相对应形参之间的数据传递方式是( )
A. 地址传递
B. 由用户指定传递方式
C. 由实参传给形参,再由形参传回给实参
D. 单向值传递
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
119. 3. C语言规定,函数返回值的类型是由( )
A. 调用该函数时系统临时决定
B. return语句中的表达式类型所决定
C. 在定义该函数时所指定的函数类型所决定
D. 调用该函数时的主调函数类型所决定
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
120. 4. C语言程序中,以下正确的描述是()
A. 函数的定义和函数的调用均可以嵌套
B. 函数的定义可以嵌套,但函数的调用不可以嵌套
C. 函数的定义和函数的调用均不可以嵌套
D. 函数的定义不可以嵌套,但函数的调用可以嵌套
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
121. 5. 有如下程序: #include void f(int x,int y) { int t; if(x int a=4,b=3,c=5; f(a,b);f(a,c);f(b,c); printf("%d,%d,%d\n",a,b,c); return 0; }
A. 5,4,3
B. 3,4,5
C. 5,3,4
D. 4,3,5
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
122. 6. 有如下函数调用语句: func(rec1,rec2+rec3,(rec4,rec5)); 该函数调用语句中,含有的实参个数是( )
A. 4
B. 3
C. 5
D. 有语法错误
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
123. 7. 有如下程序: #include int func(int a,int b) { return (a+b); } int main() { int x=2,y=5,z=8,r; r=func(func(x,y),z); printf("%d\n",r); return 0; }
A. 12
B. 13
C. 15
D. 14
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
124. 8. 有以下函数定义: void fun(int n,double x) {................} 若以下选项中的变量都已正确定义并赋值,则对函数fun正确的调用语句是( )
A. k=fun(10,12.5);
B. void fun(n,x);
C. fun(int y,double m);
D. fun(x,n);
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
125. 9. 若程序中定义了以下函数: float sub(float x,float y) { return x-y;} 并将其放在调用语句之后,则在调用之前应该对该函数进行声明,以下选项中错误的声明是( )
A. float sub(float ,float )
B. float sub(float x,y)
C. float sub(float a,float b)
D. float sub(float x,float y)
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
126. 10. 有如下程序: #include long fib(int n) { if(n>2) return (fib(n-1)+fib(n-2)); else return 2; } int main() { printf("%ld\n",fib(4)); return 0; }
A. 2
B. 8
C. 4
D. 6
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
127. 11. 下列程序的运行结果是( ) #include double sub(double x,double y,double z) { y-=1.0; z=x+y+z; return z; } int main() { double a=2.5,b=9.0; printf("%0.1f\n",sub(b-a,a,a)); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
128. 12. 阅读下面程序,在空白处填上适合的语句。 #include __________________________; int main() { int a,b; scanf("%d%d",&a,&b); printf("%f\n",myadd(a,b)); } double myadd(double a,double b) { return a+b; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
129. 13. 写出下面程序的运行结果( ) #include int func(int a,int b) { return (a*b,a/b); } int main() { int x=5,y=2; printf("%d\n",func(x,y)); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
130. 14. 下面程序的运行结果是( ) #include int func1(int a) { int c=3; return c+=a; } int func2(int a,int b) { int c=7; return func1(func1(c*=a+b)); } int main() { printf("%d",func2(5,4)); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
131. 15. 以下程序的运行结果是( ) #include int fun(int x) { if(x/2>0) fun(x/2); printf("%d ",x); } int main() { fun(6); return 0; }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
132. 1. 下面程序段的运行结果是( )。 char s[6]; s="abcd"; printf("\"%s\"\n",s);
A. \"abcd\"
B. 编译出错
C. "abcd"
D. abcd
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
133. 2. 若有定义char s[]="good";char t[]={'g','o','o','d'};则下列叙述正确的是_______
A. 数组s比t长
B. 数组s与t长度相同
C. 数组s比t短
D. s和t完全相同
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
134. 3. 以下程序的输出结果是________ #include #include int main() { char st[20]="hel\0x41o\t"; printf("%d %d\n",strlen(st),sizeof(st)); }
A. 11 20
B. 6 20
C. 3 20
D. 11 11
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
135. 4. 以下程序的运行结果是______ #include #include int main() { char a[]={'a','b','c','d','e','f','g','h','\0'}; printf("%d,%d\n",strlen(a),sizeof(a)); }
A. 8,9
B. 9,9
C. 9,8
D. 1,8
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
136. 5. 有如下程序: #include int main() { char ch[10]="abcd",c[10]="abcd"; if(ch==c) printf("%s","true"); else printf("%s","false"); } 执行后输出结果是________
A. 有语法错误
B. true
C. false
D. 以上答案都不正确
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
137. 6. 有如下程序: #include int main() { char ch[10]="aba",c[10]="ab\0cd"; ch=c; printf("%s",ch); } 执行后输出结果是________
A. ab\0cd
B. 以上答案都不正确
C. 有语法错误
D. ab
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
138. 7. 若有char a[10],b[10];,则正确的输入语句是________
A. scanf("%s%s",&a,&b);
B. getchar(a);getchar(b);
C. scanf("%s%s",a,b);
D. gets(a,b);
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
139. 8. 执行下列程序时输入:123 456 789,则输出结果是________ #include int main() { char s[10]; int c,i; scanf("%c%d%s",&c,&i,s); printf("%c,%d,%s\n",c,i,s); }
A. 123,456,789
B. 1,23,456 789
C. 1,456,789
D. 1,23,456
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
140. 9. 以下程序的运行结果是__________ #include int main() { char ch[3][5]={"AA","BBB","CCCC"}; printf("%s\n",ch[1]); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
141. 10. 以下程序的运行结果是_______ #include int main() { char b[]="Hello,you"; b[5]=0; printf("%s\n",b); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
142. 11. 下列程序的运行结果是_______ #include #include int main() { char a[10]="abcde",b[]="fgh"; strcpy(a+1,b+2); printf("%s",a); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
143. 12. 下列程序的运行结果是_______ #include int main() { char s[]="a good world"; int i,j; for(i=j=0;s[i]!='\0';i++) if(s[i]!='d') s[j++]=s[i]; s[j]='\0'; printf("%s",s); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。
144. 13. 运行下面程序,输入Hello World,则输出结果为:_____ #include int main() { char s[20]; scanf("%s",s); printf("%s",s); }
答案:请关注【九八五题库】微信公众号,发送题目获取正确答案。