资源描述
13.
以下程序的输出结果是_ B_____。
#include <stdio.h>
main()
{
int a,b,d=241;
a=d/100%9;
b=(-1)&&(-1);
printf("%d,%d\n",a,b);
}
A、6,1 B、2,1 C、6,0 D、2,0
答案:B
知识点:赋值表达式
16.
有如下程序
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);
}
程序运行后输出结果是_B_____。
A、1 65 1 6.5
B、1 65 1.5 6.5
C、1 65 1.0 6.5
D、2 65 1.5 6.5
答案:B
知识点:赋值表达式
24.若k是int型变量,且有下面的程序片段
k=-3
if(k<=0) printf("####")
else printf("&&&&");
上面程序片段的输出结果是少了一个;_____。
A、#### B、&&&& C、####&&&&
D、有语法错误,无输出结果
答案:D
知识点:简单C语言程序的构成和格式
26.
有以下程序
main()
{
int a=0,b=0;
a=10; /* 给a赋值 */
b=20; /* 给b赋值 */
printf("a+b=%d\n",a+b);
}
程序运行后的输出结果是______。
A、a+b=10 B、a+b=30 C、30 D、出错
答案:B
知识点:简单C语言程序的构成和格式
31.
设int a=12,则执行完语句a+=a-=a*a后,a的值是______。
A、552 B、264 C、144 D、-264
答案:D
知识点:算术表达式
33.
若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值是______。
A、1.4 B、1 C、2.0 D、2 强制转换
答案:B
知识点:算术表达式
35.
假定x和y为double型,表达式x=2,y=x+3/2的值是______。
A、3.500000 B、3
C、2.000000 D、3.000000
答案:D
知识点:算术表达式
36.
若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是______。
A、1 B、2 C、2.000000 D、2.500000
答案:C
知识点:算术表达式
37.
若有以下程序段
int c1=1,c2=2,c3;
c3=1.0/c2*c1;
则执行后,c3中的值是______。
A、0 B、0.5 C、1 D、2
答案:A
知识点:算术表达式
38.
设有int x=11;则表达式(x++ * 1/3)的值是______。??
A、3 B、4 C、11 D、12
答案:A
知识点:算术表达式
39.
下列程序的输出结果是______。
main()
{
double d=3.2; int x,y;
x=1.2;y=(x+3.8)/5.0;
printf("%d \n",d*y);int定义整数。。小数直接舍掉。
}
A、3 B、3.2 C、0 D、3.07
答案:C
知识点:算术表达式
40.
请读程序片段:
int i=65536;
printf("%d\n",i);
上面程序片段的输出结果是____b__。
A、65536 B、0
C、有语法错误,无输出结果 D、-1
答案:B
知识点:整型数据
41.
若有以下定义和语句:
int u=010,v=0x10,w=10;
printf("%d,%d,%d\n",u,v,w);
则输出结果是: ______。0放首位,代表八进制,
0x放首位,代表十六进制。
A、8,16,10 B、10,10,10
C、8,8,10 D、8,10,10
答案:A
知识点:整型数据
43.
以下程序的输出结果是______。
main( )
{
int k=17;
printf("%d,%o,%x \n",k,k,k);
}
A、17,021,0x11 B、17,17,17
C、17,0x11,021 D、17,21,11
答案:D
知识点:整型数据
44.
下面程序的输出是______。
main()
{
unsigned a=32768;
printf("a=%d\n",a);
}
A、a=32768 B、a=32767
C、a=-32768 D、a=-1
答案:C
知识点:整型数据
48.
有以下程序
main()
{
int m=0256,n=256;
printf("%o %o\n",m,n);
}
程序运行后的输出结果是______。
A、0256 0400 B、0256 256
C、256 400 D、400 400
答案:C
知识点:整型数据
49.
若执下面程序时从键盘上输入5,
main()
{
int x;
scanf("%d",&x);
if(x++>5) printf("%d\n",x);
else printf("%d\n",x--);
}
则输出是______。
A、7 B、6 C、5 D、4
答案:B
知识点:自加、自减运算符和逗号运算符
50.
有以下程序
main ()
{
char a1='M', a2='m';
printf("%c\n", (a1,a2)); 逗号最后的表达式是最后的值。
}
以下叙述中正确的是______。
A、程序输出大写字母M
B、程序输出小写字母m
C、格式说明符不足,编译出错
D、程序运行时产生出错信息
答案:B
知识点:自加、自减运算符和逗号运算符
51.
以下程序的输出结果是 ______。
main()
{
int a;
printf("%d\n",(a=3*5,a*4,a+5));
}
A、65 B、20 C、15 D、10
答案:B
知识点:自加、自减运算符和逗号运算符
54.
有以下程序
main()
{
int x,y,z;
x=y=1;
z=x++,y++,++y;
printf("%d,%d,%d\n",x,y,z);
}
程序运行后的输出结果是______。
A、2,3,3 B、2,3,2 C、2,3,1 D、2,2,1
答案:C
知识点:自加、自减运算符和逗号运算符
55.
设有以下定义
int a=0;
double b=1.25;
char c='A';
#define d 2
则下面语句中错误的是______。
A、a++; B、b++; C、c++; D、d++;
答案:D
知识点:自加、自减运算符和逗号运算符
56.
以下程序的输出结果是______。
main()
{
int x=10,y=10;
printf("%d %d\n",x--,--y);
}
A、10 10 B、99 C、9 10 D、10 9
答案:D
知识点:自加、自减运算符和逗号运算符
57.
若x和y都是int型变量,x=100、y=200,且有下面的程序片段
printf("%d",(x,y));
上面程序片段的输出结果是______。
A、200 B、100 C、100 200
D、输则格式符不够, 输出不确定的值
答案:A
知识点:自加、自减运算符和逗号运算符
58.
设有如下定义:
int x=10,y=3,z;
则语句
printf("%d\n",z=(x%y,x/y));
的输出结果是______。
A、1 B、0 C、4 D、3
答案:D
知识点:自加、自减运算符和逗号运算符
59.
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是______。
main( )
{
int x;
scanf("%d",&x);
if(x++ > 5)
printf("%d",x);
else
printf("%d\n",x--);
}
A、7和5 B、6和3 C、7和4 D、6和4
答案:A
知识点:自加、自减运算符和逗号运算符
60.
若t为double类型,表达式t=1,t+5,t++的值是______。
A、1 B、6.0 C、2.0 D、1.0
答案:D
知识点:自加、自减运算符和逗号运算符
61.
以下程序的输出结果是______。
#include<stdio.h>
main()
{
int i=10,j=10;
printf("%d,%d\n",++i,j--);
}
A、11,10 B、9,10 C、010,9 D、10,9
答案:A
知识点:自加、自减运算符和逗号运算符
62.
有以下程序
main()
{
int y=10;
while(y--);
printf("y=%d\n",y);
}
程序执行后的输出结果是______。
A、y=0 B、y=-1 C、y=1
D、while构成无限循环
答案:B
知识点:自加、自减运算符和逗号运算符
64.
下面程序的输出是______。
fun3(int x)
{
static int a=3;
a+=x;
return(a);
}
main()
{
int k=2, m=1, n;
n=fun3(k);
n=fun3(m);
printf("%d\n",n);
}
A、3 B、4 C、6 D、9
答案:C
知识点:局部变量与其作用域和生存期
66.
有以下程序
int fun(int x[],int n)
{
static int sum=0,i;
for(i=0;i<n;i++) sum+=x[i];
return sum;
}
main()
{
int a[]={1,2,3,4,5},b[]={6,7,8,9,},s=0;
s=fun(a,5)+fun(b,4);
printf("%d\n",s);
}
程序执行后的输出结果是______。
A、45 B、50 C、60 D、55
答案:C
知识点:局部变量与其作用域和生存期
67.
以下程序执行后sum的值是___初值未定义___。
main()
{
int i,sum;
for(i=1;i<6;i++) sum+=i;
printf("%d\n",sum);
}
A、15 B、14 C、不确定 D、0
答案:C
知识点:局部变量与其作用域和生存期
68.
以下程序的输出结果是______。
main()
{
int k=4,m=1,p;
p=func(k,m); printf("%d,",p);
p=func(k,m); printf("%d\n",p);
}
func(int a,int b)
{
static int m=0,i=2;
i+=m+1; m=i+a+b;
return(m);
}
A、8,17 B、8,16 C、8,20 D、8,8
答案:A
知识点:局部变量与其作用域和生存期
70.
有以下程序
fun(int x, int y)
{
static int m=0,i=2;
i+=m+1;
m=i+x+y;
return m;
}
main()
{
int j=1,m=1,k;
k=fun(j,m); printf("%d,",k);
k=fun(j,m); printf("%d\n",k);
}
执行后的输出结果是______。
A、5,5 B、5,11 C、11,11 D、11,5
答案:B
知识点:局部变量与其作用域和生存期
71.
以下程序的输出结果是______。
int a,b;
void fun()
{
a=100;
b=200;
}
main()
{
int a=5,b=7;
fun();
printf("%d%d\n",a,b);
}
A、100200
B、57
C、200100
D、75
答案:B
知识点:全局变量与其作用域和生存期
72.
有如下程序
int func(int a,int b)
{ return(a+b); }
main()
{
int x=2,y=5,z=8,r;
r=func(func(x,y),z);
printf("%d\n",r);
}
该程序的输出结果是______。
A、12 B、13 C、14 D、15
答案:D
知识点:调用函数和被调用函数之间的数据传递
73.
有以下程序
void f(int v,int w)
{
int t;
t=v;v=w;w=t;
}
main()
{
int x=1,y=3,z=2;
if(x>y) f(x,y);
else if(y>z) f(y,z);
else f(x,z);
printf("%d,%d,%d\n",x,y,z);
}
执行后输出结果是______。
A、1,2,3 B、3,1,2 C、1,3,2 D、2,3,1
答案:C
知识点:调用函数和被调用函数之间的数据传递
74.
有以下程序
void f(int x,int y)
{
int t;
if(x<y) {t=x; x=y; y=t;}
}没有return 回去不了??
main()
{
int a=4,b=3,c=5;
f(a,b); f(a,c); f(b,c);
printf("%d,%d,%d\n",a,b,c);
}
执行后输出结果是______。
A、3,4,5
B、5,3,4
C、5,4,3
D、4,3,5
答案:D
知识点:调用函数和被调用函数之间的数据传递
75.有以下程序
int fun1(double a) { return a*=a; }
int fun2(double x,double y)
{
double a=0,b=0;
a=fun1(x);
b=fun1(y);
return (int)(a+b);
}
main()
{
double w;
w=fun2(1.1,2.0);
}
程序执行后变量w中的值是______。
A、5.21 B、5 C、5.0 D、0.0
答案:C
知识点:调用函数和被调用函数之间的数据传递
81.
当执行下面的程序时,如果输入ABC,则输出结果是______。
#include "stdio.h"
#include "string.h"
main()
{
char ss[10]="12345";
gets(ss);
strcat(ss,"6789");
printf("%s\n",ss);
}
A、ABC6789 B、ABC67
C、12345ABC6 D、ABC456789
答案:A
知识点:函数的调用
82.
有如下程序
long fib(int n)
{
if(n>2) return(fib(n-1)+fib(n-2));
else return(2);
}
main()
{ printf("%ld\n",fib(3)); }
该程序的输出结果是______。
A、2 B、4 C、6 D、8
答案:B
知识点:函数的调用
84.
有以下程序
char fun(char x,char y)
{
if(x<y) return x;
return y;
}
main()
{
int a='9',b='8',c='7';
printf("%c\n",fun(fun(a,b),fun(b,c)));
}
程序的执行结果是______。
A、函数调用出错 B、8 C、9 D、7
答案:D
知识点:函数的调用
94.
有以下程序
int f(int a)
{ return a%2; }
main()
{
int s[8]={1,3,5,2,4,6},i,d=0;
for(i=0;f(s[i]);i++) d+=s[i];
printf("%d\n",d);
}
程序运行后的输出结果是______。
A、9 B、11 C、19 D、21
答案:A
知识点:函数的定义和返回值
103.
以下程序的输出结果是______。
main()
{
int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for (i=1;i<3;i++)
for(j=0;j<=i;j++) s+=a[i][j];
printf("%d\n",s);
}
A、18 B、19 C、20 D、21
答案:A
知识点:二维数组的定义和二维数组元素的引用
104.
以下程序的输出结果是______。
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]);
}
答案:C
知识点:二维数组的定义和二维数组元素的引用
105.
有以下程序
main()
{
int i,t[][3]={9,8,7,6,5,4,3,2,1};
for(i=0;i<3;i++)
printf("%d",t[2-i][i]);
}
判序执行后的输出结果是______。
A、753 B、357 C、369 D、751
答案:B
知识点:二维数组的定义和二维数组元素的引用
108.
有以下程序
main()
{
int m[][3]={1,4,7,2,5,8,3,6,9};
int i,j,k=2;
for(i=0;i<3;i++)
{ printf("%d ",m[k][i]); }
}
执行后输出结果是______。
A、4 5 6 B、2 58 C、3 6 9 D、7 8 9
答案:C
知识点:二维数组的定义和二维数组元素的引用
111.
以下程序的输出结果是______。
main()
{
int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);
}
A、0650 B、1470 C、5430D、输出值不定
答案:A
知识点:二维数组的定义和二维数组元素的引用
112.
定义如下变量和数组:
int i;
int 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 47 C、3 5 7 D、3 6 9
答案:C
知识点:二维数组的定义和二维数组元素的引用
知识点:二维数组的定义和二维数组元素的引用
132.
有以下程序
void sum(int a[])
{ a[0]=a[-1]+a[1]; }
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10};
sum (&a[2]);
printf("%d\n",a[2]);
}
程序运行后输出结果是______。
A、6 B、7 C、5 D、8
答案:A
知识点:函数之间对一维数组和数组元素的引用
138.
有以下程序
main()
{ char s[]="abcde";
s+=2;
printf("%d\n",s[0]);
}
执行后的结果是______。
A、输出字符a的ASCII码
B、输出字符c的ASCII码
C、输出字符c
D、程序出错
答案:D
知识点:函数之间对一维数组和数组元素的引用
139.
请读程序:
#include <stdio.h>
f(int b[],int n)
{ int i,r;
r=1;
for(i=0;i<=n;i++) r=r*b[i];
return r;
}
main()
{ int x,a[]={2,3,4,5,6,7,8,9};
x=f(a,3);
printf("%d\n",x);
}
上面程序的输出结果是______。
A、720 B、120 C、24 D、6
答案:B
知识点:一维数组的定义和一维数组元素的引用
145.
有如下程序
main()
{ int n[5]={0,0,0},i,k=2;
for(i=0;i<k;i++)
n[i]=n[i]+1;
printf("%d\n",n[k]);
}
该程序的输出结果是______。
A、不确定的值 B、2 C、1 D、0
答案:D
知识点:一维数组的定义和一维数组元素的引用
146.
以下程序的输出结果是______。
main()
{ int i,a[10];
for(i=9;i>=0;i--) a[i]=10-i;
printf("%d%d%d",a[2],a[5],a[8]);
}
A、258 B、741 C、852 D、369
答案:C
知识点:一维数组的定义和一维数组元素的引用
174.
下面程序的输出是______。
main()
{ int x=10,y=3;
printf("%d\n",y=x/y);
}
A、0 B、1 C、3 D、不确定的值
答案:C
知识点:数据输出
175.
已知字母A的ASCII码为十进制的65,下面程序的输出是______。
main()
{
char ch1,ch2;
ch1='A'+'5'-'3';
ch2='A'+'6'-'3';
printf("%d,%c\n",ch1,ch2);
}
A、67,D B、B,C C、C,D D、不确定的值
答案:A
知识点:数据输出
176.
下列程序的运行结果是______。
#include <stdio.h>
main()
{ int a=2,c=5;
printf("a=%d,b=%d \n",a,c);
}
A、a=%2,b=%5 B、a=2,b=5
C、a=d,b=d D、a=%d,b=5d
答案:B
知识点:数据输出
177.
以下程序的输出结果是______。
#include <stdio.h>
main()
{ int a=2,c=5;
printf("a=%%d,b=%%d\n",a,c);
}
A、a=%2,b=%5 B、a=2,b=5
C、a=%%d,b=%%d D、a=%d,b=%d
答案:D
知识点:数据输出
178.
有以下程序
main( )
{ int x=102,y=012;
printf("%2d,%2d\n",x,y);
}
执行后输出结果是______。
A、10,01 B、02,12
C、102,10 D、02,10
答案:C
知识点:数据输出
179.
有以下程序
main()
{ int a=666,b=888;
printf("%d\n",a,b);
}
程序运行后的输出结果是______。
A、错误信息 B、666 C、888 D、666,888
答案:B
知识点:数据输出
181.
执行下列程序时输入:123<空格>456<空格>789<回车>,输出结果是______。
main()
{ char s[100];
int c,i;
scanf("%c",&c);
scanf("%d",&i);
scanf("%s",s);
printf("%c,%d,%s \n",c,i,s);
}
A、123,456,789 B、1,456,789
C、1,23,456,789 D、1,23,456
答案:D
知识点:数据输入
186.
有以下程序
#include <stdio.h>
main()
{ char c1,c2,c3,c4,c5,c6; scanf("%c%c%c%c",&c1,&c2,&c3,&c4);
c5=getchar();
c6=getchar();
putchar(c1);
putchar(c2);
printf("%c%c\n",c5,c6);
}
程序运行后,若从键盘输入(从第1列开始) ______。
123<回车>
45678<回车>
则输出结果是
A、1267 B、1256 C、1278 D、1245
答案:D
知识点:数据输入
195.
假定所有变量均已正确说明,下列程序段运行后x的值是______。
a=b=c=0;x=35;
if(!a) x--;
else if(b) ;
if(c) x=3;
else x=4;
A、34 B、4 C、35 D、3
答案:B
知识点:if语句和用if语句构成的选择结构
196.
有以下程序
main()
{
int i;
for(i=1;i<40;i++)
{
if(i++%5==0)
if(++i%8==0)
printf("%d ",i);
}
printf("\n");
}
执行后的输出结果是______。
A、5 B、24 C、32 D、40
答案:C
知识点:if语句和用if语句构成的选择结构
198.
有如下程序
main()
{
int a=2,b=-1,c=2;
if(a<b)
if(b<0) c=0;
else c++;
printf("%d\n",c);
}
该程序的输出结果是______。
A、0 B、1 C、2 D、3
答案:C
知识点:if语句和用if语句构成的选择结构
199.
请读程序:
#include<math.h>
#include<stdio.h>
main()
{ float x,y,z;
scanf("%f%f",&x,&y);
z=x/y;
while(z)
{ if(fabs(z)>1.0)
{ x=y; y=z; z=x/y; }
else break;
}
printf("%f\n",y);
}
若运行时从键盘上输入3.6 2.4<CR>(<CR>表示回车),则输出的结果是______。
A、1.500000 B、1.600000
C、2.000000 D、2.400000
答案:B
知识点:if语句和用if语句构成的选择结构
204.
有以下程序
main()
{ int k=5,n=0;
while(k>0)
{ switch(k)
{ default : break;
case 1: n+=k;
case 2:
case 3: n+=k;
}
k- -;
}
printf("%d\n",n);
}
程序运行后的输出结果是______。
A、0 B、4 C、6 D、7
答案:D
知识点:switch语句以与用switch语句和break语句构成的选择结构
207.
有以下程序
main()
{
int i;
for(i=0;i<3;i++)
switch(i)
{
case 1: printf("%d",i);
case 2: printf("%d",i);
default: printf("%d",i);
}
}
执行后输出结果是______。
A、011122 B、012 C、012020 D、120
答案:A
知识点:switch语句以与用switch语句和break语句构成的选择结构
209.
有如下程序
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=2,b=1 B、a=1,b=1
C、a=1,b=0 D、a=2,b=2
答案:A
知识点:switch语句以与用switch语句和break语句构成的选择结构
210.
以下程序的输出结果是______。
main()
{ int a=0,i;
for(i=1;i<5;i++)
{
switch(i)
{
case 0:
case 3: a+=2;
case 1:
case 2: a+=3;
default: a+=5;
}
}
printf("%d\n",a);
}
A、31 B、13 C、10 D、20
答案:A
知识点:switch语句以与用switch语句和break语句构成的选择结构
261.
下列程序的输出结果是______。
main()
{ int i,j,m=0,n=0;
for(i=0;i<2;i++)
for(j=0;j<2;j++)
if(j>=i) m=1;
n++;
printf("%d \n",n);
}
A、4 B、2 C、1 D、0
答案:C
知识点:循环结构的嵌套
262.
有以下程序
main()
{
int i,n=0;
for(i=2;i<5;i++)
{
do
{
if(i%3)
continue;
n++;
}
while(!i);
n++;
}
printf("n=%d\n",n);
}
程序执行后的输出结果是______。
A、n=5 B、n=2 C、n=3 D、n=4
答案:D
知识点:循环结构的嵌套
263.
阅读下列程序:
main()
{ int n[3],i,j,k;
for(i=0;i<3;i++)
n[i]=0;
k=2;
for(i=0;i<k;i++)
for(j=0;j<k;j++)
n[j]=n[i]+1;
printf("%d\n",n[1]);
}
下述程序运行后输出结果是______。
A、2 B、1 C、0 D、3
答案:D
知识点:循环结构的嵌套
328.
若执行下面的程序时从键盘上输入3和4,则输出是______。
main()
{ int a,b,s;
scanf("%d %d",&a,&b);
s=a;
if(a<b)
s=b;
s=s*s;
printf("%d\n",s);
}
A、14 B、16 C、18 D、20
答案:B
知识点:程序分析
329.
以下程序的输出结果是______。
#include <stdio.h>
main()
{ int i;
for(i=1;i<5;i++)
{ if(i%2) printf("*");
else continue;
printf("#");
}
printf("$\n");
}
A、*#*#*#$ B、#*#*#*$
C、*#*#$ D、#*#*$
答案:C
知识点:程序分析
331.
以下程序的输出结果是______。
main()
{ int i;
for(i=1;i<6;i++)
{
if(i%2) { printf("#"); continue; }
printf("*");
}
printf("\n");
}
A、#*#*# B、##### C、***** D、*#*#*
答案:A
知识点:程序分析
332.
以下程序的输出结果是______。
#include <stdio.h>
main()
{
int i=0,a=0;
while(i<20)
{
for(;;)
{
if(i%10==0) break;
else i--;
}
i+=11;
a+=i;
}
printf("%d\n",a);
}
A、21 B、32 C、33 D、11
答案:B
知识点:程序分析
333.
下面程序的输出结果是______。
#include <stdio.h>
main()
{
int i=2;
printf("%d",f(i,i+1));
}
int f(int a,int b)
{
int c;
c=a;
if(a>b) c=1;
else if(a==b) c=0;
else c=-1;
return(c);
}
A、-1 B、0 C、1 D、2
答案:A
知识点:程序分析
336.
下面的程序运行结果为______。
main()
{
int x=3,y=0,z=0;
if(x=y+z) printf("* * * *");
else printf("# # # #");
}
A、有语法错误不能通过编译
B、输出* * * *。
C、可以通过编译,但是不能通过连接,因而不能运行。
D、输出# # # #。
答案:D
知识点:程序分析
337.
若执行以下程序时从键盘上输入9,则输出结果是______。
main()
{ int n;
scanf("%d",&n);
if(n++<10) printf("%d\n",n);
else printf("%d\n",n--);
}
A、11 B、10 C、9 D、8
答案:B
知识点:程序分析
40 / 40
展开阅读全文