高级语言程序设计(一)2012年1月真题及答案解析
-
(1)写出求三角形面积的函数,函数头为:float area(float a,float b,float c)
三角形面积公式:
(2)写出主函数,根据下图提供的各边的长度,调用上述函数,计算并输出多边形的面积。
-
由键盘输入10个实型数到数组,求它们的平均值,输出平均值和其中大于平均值的数。
-
打印如下的乘法表。
1
2 4
3 6 9
4 8 12 16
……
9 18 27 36……81
void main()
{
int i, j;
for(i=1; _____①____; i++) /* 第一空 */
{
for(j=1; j<=_____②____; j++) printf("%5d", i*j); /* 第二空 */
_____③____; /* 第三空 */
}
}
-
某班30名学生,由键盘输入每个学生的姓名和两门课的成绩,输出其中两门课都通过(成绩大于等于60分)的学生姓名和成绩。
-
计算s=1+2+3+……+n,直到s的值大于1000为止,输出s和n的值。
-
#include
int x=1; void fx(int p) { x=p+x; p++; } void main() { int a=3; fx(a); printf("%d %d\n", a, x); } -
执行下列程序,输入数据:abcd↙
-
int fun(int m)
{ static int n=1;
++m; n++;
return(m+n);
}
void main()
{ int a,b;
a=fun(0); b=fun(10);
printf("a=%d,b=%d\n", a, b);
}
-
执行printf("%5.2f\n", (int)10.0%2+12.34);后的输出结果县__________。
-
#include
void main() { int y=10; for(; y>0; y--) if(y%3==0) { printf("%3d",--y); continue; } printf("\n"); } -
执行printf("%d\n", 2^4);后的输出结果是__________。
-
局部变量默认的存储类型是__________。
-
从键盘输入含有空格的字符串,使用的系统函数是__________。
-
设char *p="Superstar";,执行printf("%c%s\n", *p, p+6);后的输出结果是__________。
-
设int a=123;,表达式a/10%10的值是__________。
-
运算符“==”的优先级比运算符“=”的优先级__________。
-
设char str[10]="abc";,执行printf("%s\n", strcpy(str,"Spain"));后的输出结果是__________。
-
b2-4ac≥0对应的C语言关系表达式是__________。
-
设int x=3;,执行printf("%d\n", x+(x-=x*x));后的输出结果是__________。
-
文件使用方式“wb”的含义是( )
- A.对文本文件只写
- B.对二进制文件只写
- C.对文本文件读和写
- D.对二进制文件读和写
-
设typedef char *POINT;,若有引用POINT p,q[5];,则( )
- A.p是字符型变量,q是字符型数组
- B.p是字符型变量,q是字符型指针数组
- C.p是字符型指针变量,q是字符型数组
- D.p是字符型指针变量,q是字符型指针数组
-
设int b,a[]={1,2,3,4}, *p=a;,与b=*p++;等价的语句是( )
- A.b=*(++p);
- B.b=*(p++);
- C.b=p++;
- D.b=*++p;
-
定义二维数组并初始化正确的是( )
- A.int a[3][3]=[0,1];
- B.int a[3][3]={0,1,2,3,4,5,6,7,8,9};
- C.int a[3][]={{1,2},{3,4}};
- D.int a[][3]={{0},{1,2},{3,4,5}};
-
下列叙述正确的是( )
- A.实参不能是表达式
- B.函数可以没有形式参数
- C.在一个函数中只能有一个return语句
- D.函数定义时,若函数类型缺省则默认的类型是void
-
设int n=8;,执行while(n>5){n--; printf("%2d", n);}后的输出结果是( )
- A.8 7 6 5
- B.8 7 6
- C.7 6 5
- D.7 6
-
设int m[]={5,4,3,2,1},i=2;,数组元素引用错误的是( )
- A.m[--i]
- B.m[i*i]
- C.m[m[0]]
- D.m[i-2]
-
函数float *fun(){……}返回的是( )
- A.地址
- B.实型值
- C.整型值
- D.字符常数
-
设int i=1,s=1;,下列能正确计算5!的是( )
- A.while(i++<=5) s*=i;
- B.for(; i<4 ;i++) s*=i++;
- C.do{s*=i;} while(i<=4);
- D.for(; i<=5; i++) s*=i;
-
设int a,b,t;,不能实现a和b的值交换的语句是( )
- A.a=t;t=b;b=a;
- B.t=a;a=b;b=t;
- C.t=b;b=a;a=t;
- D.a=a+b;b=a-b;a=a-b;
-
设int x,*p;,正确的赋值语句是( )
- A.*p=&x;
- B.*p=*x;
- C.p=x;
- D.p=&x;
-
设int n=0;,执行表达式n‖(n=-1)‖(n=0)‖(n=1)‖(n=2)后n的值是( )
- A.-1
- B.0
- C.1
- D.2
-
设int a=4;,表达式的值不为8的是( )
- A.a*=a-2
- B.a--, 3*a-1
- C.a>1?++a*2:3*a
- D.a+=a
-
正确的实型常数是( )
- A.1E0
- B.E0
- C.1E0.0
- D.1E
-
C语言的保留字是( )
- A.FILE
- B.define
- C.Auto
- D.Else