1、单项选择 ================================================== 题号:13167 以下叙述中正确的是( )。 A、程序设计的任务就是确定所用算法 B、程序设计的任务就是确定所用数据结构 C、顺序,转移,选择程序设计的任务就是编写程序代码并上机调试 D、以上三种说法都不完整 答案: D 题号:13162 计算机能直接执行的程序是( )。 A、可执行程序 B、源程序 C、汇编程序 D、目标程序 答案: A 题号:13171 下列叙述中正确的是( )。 A、C语言规定必须
2、用main作为主函数名,程序将从此开始执行,在此结束 B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C、main可作为用户标识符,用以命名任意一个函数作为主函数 D、C语言程序将从源程序中第一个函数开始执行 答案: A 题号:13165 在算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。这属于算法的( )。 A、确定性 B、正当性 C、可行性 D、有穷性 答案: A 题号:13164 以下叙述中正确的是( )。 A、用C语言编写的程序只能放在一个程序文件中 B、 C、 D、 答案:
3、D
题号:13169
下列叙述中正确的是( )。
A、在C程序中 main( )函数的位置是固定的
B、每个C程序文件中都必须要有一个main( )函数
C、C程序中所有函数之间都可以相互调用,与函数所处位置无关
D、在C程序的函数中不能定义另一个函数
答案:
D
题号:13191
设有以下程序段:
int m=0,n=0;char c='a';
scanf("%d%c%d",&m,&c,&n);
printf("%d,%c,%d\n",m,c,n);
若从键盘上输入"10A9
4、10,a,9 B、10,A,0 C、10,A,9 D、10,a,0 答案: C 题号:13183 若有以下程序段,其输出结果是( )。 int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); printf("%d,%d,%d\n"a,b,c); A、 3,3,-10 B、 0,0,5 C、-10,3,-10 D、0,0,-10 答案: B 题号:13189 以下程序段的输出结果是( )。 float a=3.1415; printf("︱%6.0f︱\n",a); A、︱ 3
5、︱ B、︱3.1415︱ C、︱3.0︱ D、︱ 3︱ 答案: D 题号:13186 设x和y均为int型变量,则语句: x+=y;y=x-y;x-=y 的功能是( )。 A、把x和y按从大到小排列 B、把x和y按从小到大排列 C、交换x和y中的值 D、无确定结果 答案: C 题号:13177 设有定义:int x=10 ;,则表达式"x+(char)1/2.0"值的类型是( )。 A、double B、unsigned C、 float D、int 答案: A 题号:13179 若x和
6、y都是int型变量,且x=10,y=20,则执行printf("%d\n",x,y);语句后,输出的结果是( )。 A、输出格式符不够,输出不确定的值 B、20 C、10 20 D、10 答案: D 题号:13195 以下程序段的运行结果是( )。 int a=-5,b=5; printf(a>b?"a=%d":"b=%d",a,b) A、没有正确的输出格式控制 B、a=-5b=5 C、a=-5 D、b=-5 答案: D 题号:13199 下面的程序,说法正确的是( )。 main(
7、) { int x=3,y=0,z=0; if(x=y+z)printf("****"); else printf("####"); } A、可以通过编译,但是不能通过连接,因而不能运行 B、有语法错误不能通过编译 C、输出**** D、输出#### 答案: D 题号:13198 有如下程序 main() { int x=l,a=0,b=0; switch(x) { case 0:b++: case 1:a++:
8、 case 2:a++;b++; } printf("a=%d,b=%d\n",a,b); } 该程序的输出结果是___________。 A、a=2,b=1 B、a=1,b=1 C、a=1,b=0 D、a=2,b=2 答案: A 题号:13196 为了避免嵌套的if-else语句的二义性,C语言规定else总是与( )组成配对关系 A、在其之前未配对的if B、缩排位置相同的if C、同一行上的if D、在其之前最近的未配对的if 答案: D 题号:13192
9、 有如下程序 void main() { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%d\n",a,b); } 该程序的输出结果是 A、a=1,b=1 B、a=2,b=2 C、a=2,b=1 D、a=1,b=0 答案: C 题号:13194 下列只有当整数x为偶数时,才是逻辑"真"的表达式是( )。 A、x%2 !=0 B、(x-x/2*2)==0 C、!(x%2==0) D、
10、if (x%2); 答案: B 题号:13193 假定所有变量均已正确说明,下列程序段运行后x的值是( ) int a=0;b=0;c=0;x=30; if (!a) x--; else if (b) x++; if( c) x=x-3; else x+=4; A、4 B、33 C、30 D、3 答案: B 题号:13197 下列条件语句中,功能与其他语句不同的是 ( ) A、 if (a!=0) printf("%d\n",x); else printf("%d\n"
11、y); B、 if (a) printf("%d\n",x); else printf("%d\n",y); C、if(a==0) printf("%d\n",x); else printf("%d\n",y); D、 if(a==0) printf("%d\n",y); else printf("%d\n",x); 答案: C 填空题 ================================================== 题号:12987 一个C源程序中至少应包括一个____________________ 。 答案: 空 1: main函
12、数 题号:12990 C语言源程序文件名的后缀是________;经过编译产生的目标文件的后缀是_________;经过连接生成的可执行文件的后缀是_________。 答案: 空 1: .c 空 2: .obj 空 3: .exe 题号:13035 在C程序中,最多能有___________个main函数。 答案: 空 1: 1 题号:13044 已知字符'A'的ASCII码值是65,字符变量c1的值是'A',c2的值是'D'。执行语句printf("%d,%d",c1,c2-2);后,输出的结果是_________
13、
答案:
空 1:
65,66
题号:12994
有以下程序
#include
14、4,则以下两个表达式的值分别是 (1)________(2) __________。 (1)x+a%3+(int)(x+y)%2/4 (2) (float)(a+b)/2+(int)x%(int)y 答案: 空 1: 4.5 空 2: 7.5 题号:13049 执行下列程序段后,变量i的值是( )。 int i=10: switch(i){ case 9:i+=0; case 10:i+=1; case 11:i+=2; default:i+=3; } 答案: 空
15、1:
16
题号:12997
下列程序的功能是输出 a、b、c 三个变量中的最小值。请填空。
#include 16、a>b)a=b;c=a;
if(c!=a)c=b;
printf("%d,%d,%d\n",a,b,c);
其输出结果是__________ 。
答案:
空 1:
3,5,3
题号:13047
语句:printf(“%d”,(a=2)&&(b=-2));的输出结果是____________________。
答案:
空 1:
1
程序设计
==================================================
题号:12967
/*----------------------------- 17、
输入三角形的三边长a,b,c分别为3.1,4.2,5,3;求三角形面积。已知三角形的三边长a,b,c,其中s = (a+b+c)/2。则该三角形的面积公式为:
。
------------------------------------------------------------------------------------------------*/
#include 18、main()
{
float a,b,c,s,area;
scanf("%f,%f,%f",&a,&b,&c);
/*****************Begin***********************/
/*****************end*************************/
printf("a=%7.2f,b=7.2f,c=7.2f,s=%7.2f\n",a,b,c,s);
printf("area=%7.2f\n",area);
TestFunc();
}
void TestFunc()
{
19、
FILE *IN,*OUT;
char sIN[80];
int iOUT,i;
IN=fopen("in.dat","r");
if(IN==NULL)
{
printf("Please Verify The Currernt Dir..It May Be Changed");
}
OUT=fopen("out.dat","w");
if(OUT==NULL)
{
printf("Please Verify The Current Dir.. It May Be Changed");
}
for(i= 20、0;i<10;i++)
{
fscanf(IN,"%s",sIN);
iOUT=fun(sIN);
}
fprintf(OUT,"%d\n",iOUT);
fclose(IN);
fclose(OUT);
}
示例代码:
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
程序填空
==================================================
题号:13288
/*---------------------------- 21、
功能:大小写字母的转换。
------------------------------------*/
# include 22、II码值*/
printf("%c,%c",c1,c2);
}
答案:
位置 1:
c1-32
位置 2:
c1+32
单项选择
==================================================
题号:13170
C 语言源程序名的后缀是( )。
A、.c
B、.obj
C、.exe
D、.cpp
答案:
A
题号:13167
以下叙述中正确的是( )。
A、程序设计的任务就是确定所用算法
B、程序设计的任务就是确定所用数据结构
C、顺序,转移,选择程序设计的任务就是编写程序代码并上 23、机调试
D、以上三种说法都不完整
答案:
D
题号:13159
以下叙述错误的是( )。
A、一个C语言程序只能实现一种算法
B、C程序可以由多个程序文件组成
C、 C程序可以由一个或多个函数组成
D、一个C函数可以单独作为一个C程序文件存在
答案:
A
题号:13160
以下叙述正确的是( )。
A、注释说明只能位于一条语句的后面
B、在编译时不能发现注释中的拼写错误
C、main()必须是程序的第一行
D、C程序每一行只能写一条语句
答案:
B
题号:13166
以下关于结构化程序设计的叙述中正确的是( ) 24、
A、由三种基本结构构成的程序只能解决小规模的问题
B、结构化程序使用goto语句会很便捷
C、在C语言中,程序的模块化是利用函数实现的
D、一个结构化程序必须同时由顺序、分支、循环三种结构组成
答案:
C
题号:13168
下列关于函数的叙述中正确的是( )。
A、每个函数都可以被单独编译
B、每个函数都可以被其他函数调用(包括 main函数)
C、在一个函数内部可以定义另一个函数
D、每个函数都可以单独运行
答案:
A
题号:13184
设有如下程序段:
int x=2012,y=2013;
printf( 25、"%d\n",(x,y));
则以下叙述正确的是( )。
A、输出值为2013
B、运行时产生出错信息
C、输出值为2012
D、输出语句中格式说明符的个数少于输出项的个数,不能正确输出
答案:
A
题号:13173
可在C语言中用做用户标识符的一组是( )。
A、green void 2we FoR
B、ef-er print used&we sjhd
C、_name SIG for UI*sd
D、inT word ipad id_ds
答案:
D
26、
题号:13174
C语言中最简单的数据类型包括( )。
A、实型、字符型、逻辑型
B、整型、实型、逻辑型
C、整型、字符型、逻辑型
D、整型、实型、字符型
答案:
D
题号:13190
从键盘输入"x↙",("↙"表示回车),不能输出x的语句段是( )。
A、c=getchar();putchar(c);
B、putchar(getchar());
C、getchar(C);putchar(c);
D、scanf("%c",&c);printf("%c",c);
答案:
C
题号:13191
设有以下程序段:
int m=0,n 27、0;char c='a';
scanf("%d%c%d",&m,&c,&n);
printf("%d,%c,%d\n",m,c,n);
若从键盘上输入"10A9 28、5
C、-10,3,-10
D、0,0,-10
答案:
B
题号:13195
以下程序段的运行结果是( )。
int a=-5,b=5;
printf(a>b?"a=%d":"b=%d",a,b)
A、没有正确的输出格式控制
B、a=-5b=5
C、a=-5
D、b=-5
答案:
D
题号:13194
下列只有当整数x为偶数时,才是逻辑"真"的表达式是( )。
A、x%2 !=0
B、(x-x/2*2)==0
C、!(x%2==0)
D、if (x%2);
答案:
B
题号:13 29、197
下列条件语句中,功能与其他语句不同的是 ( )
A、 if (a!=0) printf("%d\n",x); else printf("%d\n",y);
B、 if (a) printf("%d\n",x); else printf("%d\n",y);
C、if(a==0) printf("%d\n",x); else printf("%d\n",y);
D、 if(a==0) printf("%d\n",y); else printf("%d\n",x);
答案:
C
题号:13192
有如下程序
void main()
{ int x=1, 30、a=0,b=0;
switch(x)
{ case 0:b++;
case 1:a++;
case 2:a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
该程序的输出结果是
A、a=1,b=1
B、a=2,b=2
C、a=2,b=1
D、a=1,b=0
答案:
C
题号:13198
有如下程序
main()
{ int x=l,a=0,b=0;
switch(x)
{
case 0:b++:
case 1:a++:
31、
case 2:a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
该程序的输出结果是___________。
A、a=2,b=1
B、a=1,b=1
C、a=1,b=0
D、a=2,b=2
答案:
A
题号:13196
为了避免嵌套的if-else语句的二义性,C语言规定else总是与( )组成配对关系
A、在其之前未配对的if
B、缩排位置相同的if
C、同一行上的if
D、在其之前最近的未配对的if
答案:
D
题号: 32、13199
下面的程序,说法正确的是( )。
main()
{ int x=3,y=0,z=0;
if(x=y+z)printf("****");
else printf("####");
}
A、可以通过编译,但是不能通过连接,因而不能运行
B、有语法错误不能通过编译
C、输出****
D、输出####
答案:
D
题号:13193
假定所有变量均已正确说明,下列程序段运行后x的值是( )
int a=0;b=0;c=0;x=30;
if (!a)
x--;
e 33、lse
if (b)
x++;
if( c)
x=x-3;
else
x+=4;
A、4
B、33
C、30
D、3
答案:
B
填空题
==================================================
题号:12968
C源程序的基本单位是__________________________。
答案:
空 1:
函数
题号:13036
算法的基本特征主要包括可行性、确定性、___________和输入、输出(拥有足够的情报)。
答案:
空 1: 34、
有穷性
题号:12990
C语言源程序文件名的后缀是________;经过编译产生的目标文件的后缀是_________;经过连接生成的可执行文件的后缀是_________。
答案:
空 1:
.c
空 2:
.obj
空 3:
.exe
题号:13042
表达式3.6-5/2+1.2+5%2的值是__________。
答案:
空 1:
3.8
题号:12995
下列程序运行后的输出结果是___________________ 。
main( )
{ int x=0210;
printf("%X\n" 35、x);
}
答案:
空 1:
88
题号:12994
有以下程序
#include 36、4时,执行下面一段程序后,x的值为___________。
if(a 37、<=0);
printf(“c=%d,a=%d,b=%d\n”,c,a,B.;
}
答案:
空 1:
c=0,a=0,b=1
题号:12997
下列程序的功能是输出 a、b、c 三个变量中的最小值。请填空。
#include 38、b
空 2:
c:t1
题号:12998
已有定义:char c=' ';int a=1, b;(此处 c 的初值为空格字符),执行 b=!c &&a;后b 的值为 _______。
答案:
空 1:
0
程序设计
==================================================
题号:12967
/*----------------------------------------------------------------------------------------------
输入三角形 39、的三边长a,b,c分别为3.1,4.2,5,3;求三角形面积。已知三角形的三边长a,b,c,其中s = (a+b+c)/2。则该三角形的面积公式为:
。
------------------------------------------------------------------------------------------------*/
#include 40、Begin***********************/
/*****************end*************************/
printf("a=%7.2f,b=7.2f,c=7.2f,s=%7.2f\n",a,b,c,s);
printf("area=%7.2f\n",area);
TestFunc();
}
void TestFunc()
{
FILE *IN,*OUT;
char sIN[80];
int iOUT,i;
IN=fopen("in.dat"," 41、r");
if(IN==NULL)
{
printf("Please Verify The Currernt Dir..It May Be Changed");
}
OUT=fopen("out.dat","w");
if(OUT==NULL)
{
printf("Please Verify The Current Dir.. It May Be Changed");
}
for(i=0;i<10;i++)
{
fscanf(IN,"%s",sIN);
iOUT=fun(sIN);
}
42、
fprintf(OUT,"%d\n",iOUT);
fclose(IN);
fclose(OUT);
}
示例代码:
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
程序填空
==================================================
题号:13288
/*----------------------------------
功能:大小写字母的转换。
------------------------------------*/
# include 43、 44、
单项选择
==================================================
题号:13200
下面关于循环语句for、while、do_while的叙述中,正确的是____。
A、三种循环语句中都可以缺省循环终止条件表达式
B、三种循环语句的循环体都至少被无条件地执行一次
C、三种循环语句的循环体都必须放入一对花括号中
D、三种循环语句都可能出现无穷循环
答案:
D
题号:13235
以下程序的输出结果是____ 。
main()
{int i:
for(i='A';i<='I':i++ 45、) printf("%c",i+32);
printf("\n");
}
A、abcdefgh
B、编译不通过,无
C、ABCDEFGH
D、abcdefghi
答案:
D
题号:13241
若a是int型变量,有如下程序段:
for(x=4;x<=10;x+=3)
printf((x%2)?("**%d"):("##%d\n"),x);
执行该程序段后的输出结果是____。
A、**4
##7
**10
B、##4
**7##10
C、**4##7
**10
D、##4
**7
##1 46、0
答案:
B
题号:13205
以下程序执行结果为_________。
main()
{ int i,j,k;
for(i=0,j=5;i<=j;i++,j--);
printf("k=%d",k=i+j);
}
A、k=1
B、k=8
C、k=0
D、k=5
答案:
D
题号:13239
假设a和b为int型变量,则执行以下语句后,b的值为____。
a=2:b=l0;
do
{b-=a;
}while(b--<=a++);
A、8
B、7
C、0
D、9
答案 47、
B
题号:13234
以下程序段的执行次数____。
x=10;
do{x=x*x;} while(!x);
A、无限次
B、2
C、循环体将提示有语法错误
D、1
答案:
B
题号:13203
设有以下程序段
int x=0,s=0;
while(!x!=0)s+=++x;
printf("%d",s);
则_________。
A、程序段中的控制表达式是非法的
B、运行程序段后输出1
C、运行程序段后输出0
D、程序段执行无限次
答案:
B
题号:13206
下面程序的运行结果是_________ 48、
#include 49、 int x=23;
do
{ printf("%d",x--);}while(!x);
}
该程序的执行结果是______。
A、陷入死循环
B、不输出任何内容
C、321
D、23
答案:
D
题号:4990
若i为整型变量,则以下循环执行次数是()。
for(i=2;i==0;) printf("%d",i--);
A、0次
B、1次
C、无限次
D、2次
答案:
A
题号:3880
以下循环for(x=0,y=0;(y=123)&&(x<4);x++);的执行次数是()。
A、4次
B、是无限循环
50、C、3次
D、循环次数不定
答案:
A
题号:2224
while(fabs(t)<1e-5)if(!s/10)break;循环结束的条件是()。
A、fabs(t)<1e-5&&!s/10
B、fabs(t)<1e-5
C、t>=1e-5&&t<=-1e-5&&s>-10&&s<10
D、s/10==0
答案:
C
题号:4186
以下程序段的输出结果是
int i, j, m = 0;
for(i = 1; i <= 15; i += 4)
for(j = 3; j <= 19; j += 4)
m++;
printf






