程序设计参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《C语言程序设计》模拟卷 A
一、选择题:
1.一个C语言的源程序中___A___。
A)必须有一个主函数 B)可以有多个主函数
C)必须有主函数和其他函数 D)可以没有主函数
2.执行以下语句的结果为___D___。
y=10; x=y++;
A)x=10, y=10 B)x=11, y=11
C)x=10, y=11 D)x=11, y=10
3.执行以下程序段后,c3的值是___A___。
int c1=1,c2=2,c3;
c3=c1/c2;
A) 0 B) 1/2 C) 0.5 D) 1
4.C语言中字符型(char)数据在内存中的形式存储是__D____。
A) 原码 B) 补码 C)反码 D) ASCII码
5.下列常数中不能作为C的常量的是__D____。
A) 0xA5 B) 2.5e-2 C) 3e2 D) 2e32.6
6.C语言中整数-8在内存中的存储形式是__B____。
A) 1111 1111 1111 1000 B) 1000 0000 0000 1000
C) 0000 0000 0000 1000 D) 1111 1111 1111 0111
7.已知 int i,a;执行语句"i=(a=2*3,a*5),a+6;"后,变量i的值是__C____。
A)6 B)12 C)30 D)36
8.执行以下程序段后,a,b,c的值分别是___B___。
int a,b=100,c,x=10,y=9;
a=(--x==y++)?--x:++y;
if(x<9)b=x++; c=y;
A)9,9,9 B)8,8,10 C)9,10,9 D)1,11,10 9.一个C语言程序的基本组成单位是___C___。
A)主程序 B)子程序 C)函数 D)过程
10.已知函数abc的定义为:
void abc ( )
{ ....... }
则函数定义中void的含义是__A___。
A)执行函数abc后,函数没有返回值
B)执行函数abc后,函数不再返回
C)执行函数abc后,可以返回任意类型
D)以上三个答案全是错误的
11.以下程序的输出结果是__C__。
main()
{ int i,x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++) printf("%d,",x[i][2-i]);
}
A) 1,5,9, B) 1,4,7, C) 3,5,7, D) 3,6,9, 12.已知:double *p[6];它的含义是__C___。
A)p是指向double型变量的指针 B)p是double型数组
C)p是指针数组 D)p是数组指针
13.已知:int *p, a; 则语句"p=&a;"中的运算符"&"的含义是_D____。
A)位与运算 B)逻辑与运算 C)取指针内容 D)取变量地址
14.变量的指针,其含义是指该变量的(B )
A)值 B)地址 C)名 D)一个标志
15.下面程序段的运行结果是:(B )
char c[ ]=”\t\v\\\0will\n”
printf(“%d”,strlen(c));
A)14 B)3 C)9 D)字符串中有非法字符,输出值不确定
二、填空题:
1.表达式10+16%3的值为_____11______。
2.写出满足下列条件的表达式:a和b都不小于c____a>=c&&b>=c_____________。
3.若有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]得到的初值为___0__。
4.下面函数的功能是求整数1到n的和请把程序补充完整。
long sum( int n)
{ int i;
__s=0_______
for(i=1;i<=n;i++)
___s+=i;____________
return s;
}
三、程序阅读题,写出程序的输出结果:
1.#include “stdio.h”
main()
{int i, j;
i=j=2;
if(i==1)
if(i==2)
printf(“%d”,i=i+j);
else
printf(“%d”,i=i-j);
printf(“%d”,i);
}
________________2___________________。
2.main()
{int i=3
while(i<10))
{if(i<6)
{i+=2;
continue;
}
printf(“%d ”,++i);
}
}
________8 9 10_____________。
3.#include “stdio.h”
#define X 5
#define Y X+1
#define Z Y*X/2
main( )
{int a;
a=Y;
printf(“%d %d\n”,Z,--a);
}
_______7 5_______________。
四、编程题:(共45分)
1.编程求分段函数y=f(x)的值,f(x)的表达式如下:
2x+3 x<-1
f(x)= 5x+10 -1≤x≤1
12x x>1
解:程序如下:
float f(float x)
{float y;
if(x<-1)
y=2*x+3;
else if(x>1)
y=12*x;
else
y=5*x+10;
return y;
}
main()
{float y,x;
scanf("%f",&x);
y=f(x);
printf("%f\n",y);
}
2.用switch语句编写程序,实现以下功能:从键盘输入数字1、2、3、4。分别显示excellent,good,pass,fail.输入其它键时显示error。
main()