专接本计算机c语言程序设计模拟试题及答案(一)
专接本计算机C语言程序设计模拟试题及答案 (一)
一、单项选择题 (每小题2 分,共20 分)
1. 若指针p 已正确定义,要使p 指向两个连续的整型动态存储单元,不正确的语句是()
A)p 2*(int*)malloc(sizeof(int));B)p (int*)malloc(2*sizeof(int));
C)p (int*)malloc(4*2);D)p (int*)calloc(2,sizeof(int));
2. 设有intx 11; 则表达式(x++ * 1/3) 的值是()
A) 3B)4 C) 11D) 12
3. 下列程序执行后的输出结果是(小数点后只写一位)()
#include
voidmain()
{double d;float f;long l;int i;
i f l d 20/3;
printf("%d %ld %f%f\n",i,l,f,d);
}
A) 666.0 6.0B) 666.7 6.7
C) 666.0 6.7D) 666.7 6.0
4. 下列变量定义中合法的是()
A) short_a 1-.le-1B) doubleb 1+5e2.5
C) long d1 0xfdaLD) float 2_and 1-e-3;
5. 设有定义:intk 0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()
A)k++ B)k+ 1 C)++k D)k+1
6. 有以下程序,其中%u 表示按无符号整数输出,输出结果是()
#include
voidmain()
{unsigned shortx 0xFFFF;/*x 的初值为十六进制数*/
printf("%u\n",x);
}
A)-1 B)65535 C)32767 D)0xFFFF
7. 有以下程序,输出结果是()
#include
voidmain()
{int i,j;
for(i 1;i<4;i++)
{for(j i;j<4;j++)printf("%d*%d %d ",i,j,i*j);
printf("\n");
}
}
A) 1*1 1 1*2 2 1*3 3 B) 1*1 11*2 2 1*3 3
2*1 2 2*2 4 2*2 4 2*3 6
3*1 3 3*3 9
C) 1*1 1D) 1*1 1
1*2 2 2*2 4 2*1 2 2*2 4
1*3 32*3 6 3*3 9 3*1 3 3*2 6 3*3 9
8. 在C 语言中,函数返回值的类型最终取决于()
A)函数定义时在函数首部所说明的函数类型 B)return 语句中表达式值的类型
C)调用函数时主函数所传递的实参类型 D)函数定义时形参的类型
9. 设已有定义:floatx;则对指针变量p 进行定义且赋初值的语句中正确的是()
A)float *p 1024 B)int *p (float x)
C)floatp &x D)float *P &x;
10. 以下叙述中正确的是()
A)break 语句只能用于switch 语句体中
B)continue 语句的作用是:使程序的执行流程跳出包含它的所有循环
C)break 语句只能用在循环体内和switch 语句体内
D)在循环体内使用break 语句和continue 语句的作用相同
二、完成下列的程序填空 (每空3 分,共18分)
1.写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串。
#include
#include
voidmain()
{void inverse(char str[]);
char str[100]