C语言程序设计(02600)复习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计
一、单项选择题
1.一个C语言程序总是从()位置开始执行。
【】
A) 第一个函数B) 程序的第一行C) main( ) D) 第一条执行语句
2.字符‘m’的ASCII码为109,有如下定义char a,则执行语句a=‘9’+‘m’-‘8’后,【】变量a中的值为()。
A) a B) n C)m D) 109
3.下面的程序运行时输入数据:7,32↙(↙表示回车),输出结果为()。
【】main()
{ int i,j;
scanf(“%d%d”,&i,&j);
printf(“%d”,i+j);
}
A) 39 B)7 C) 32 D) 不确定值
4.设有int a=3,b=2,c=1,d=5,m=4,n=4;执行(m=a<b)||(n= =c>d)后n的值为()。
【】
A) 1 B) 2 C) 3 D) 4
5.为表示关系x≥y≥z,应使用C语言表达式()。
【】
A) (x>=y)&(y>=z) B) (x>=y)AND(y>=z)
C)(x>=y>=z) D)(x>=y)&&(y>=z)
6.指出下面哪项不是合法的变量名()。
【】
A)_ANT B)4ant C)_ant_5_8 D)ant90
7.若运行时给变量m输入11,则以下程序的运行结果是()。
【】main()
{ int m,n;
scanf(“%d”,&m);
n=m>12 ? m-- : ++m;
printf(“%d,%d\n”,m,n);
}
A) 12,12 B) 11,11 C)11,12 D) 12,11
8.以下程序的运行结果是()。
【】main()
{int s=9; char grade;
switch(s)
{case 9 : grade='A';
case 8 : grade='B';
case 7 : grade='C';break;
case 6 : grade='D';
}
printf("%c\n",grade);
}
A) A B) B C) C D)D
9.设int k=4;有以下程序段,描述中正确的是()。
【】do
k=k*2;
while(k=0)
A)while循环执行5次B)循环体语句(k--)执行一次
C)循环体语句(k--)一次也不执行D)循环是无限循环
10.以下程序的执行结果是()。
【】main( )
{ int i,sum=0;
for(i=1;i<=3;sum++) sum+=i;
printf(“%d\n”,sum);
}
A) 3 B) 6 C) 0 D) 死循环
1.在一个C语言程序中,下列不合法的定义是()。
【】A)int flag B) float _flag C) int flag_5 D) float 5_flag
2.已知字符‘B’的ASCII码是66,变量ch是字符型,则执行语句【】ch = ‘5’ + ‘A’–‘3’ 后,ch中的值是()。
A) 65 B) 66 C) 67 D) 一个不确定的值
3.下面的程序运行时输入数据:12,13↙(↙表示回车),输出结果为()。
【】main()
{int n,m;
scanf(“%d%d”,&n,&m);
printf(“%d”,n+m);
}
A) 11 B)12 C) 13 D) 不确定值
4.下列运算符中,运算优先级按由高到低的依次是()。
【】A) !> && B)> && !C) && !> D)!&& >
5.有如下定义:float a; double b; char c; int d;则表达式:c*d+b-a值的数据类型为()。
【】A) int B) char C)float D) double
6.若有以下程序段,执行后输出结果是()。
【】main()
{ float x=8.4; int y;
y=(int)x;
printf(”x=%.1f,y=%d",x,y);
}
A) x=8,y=8.4 B) x=8,y=8 C) x=8.4,y=8 D) x=8.4,y=8.4
7.设ch是char类型的变量,其值是‘P’,则以下表达式的值是()。
【】ch=(ch>=‘A’&&ch<=‘Z’)?(ch+1):ch
A) Q B) P C) q D) p
8.有如下程序,该程序的输出结果是()。
【】main()
{ int a=0,i=3,m=3;
switch(a)
{case 0: i++;
case 1: i++;
case 2: m++;i++; break;
}
printf("%d, %d\n",i,m); }
A) 4,4 B) 6,6 C) 4,6 D) 6,4
9.以下程序运行结果是()。
【】
main()
{ int i,j;
for(i=0,j=1; i<=j+1; i+=2, j--)
printf(“%d \n”,i);
}
A) 3 B) 2 C) 1 D) 0
10.执行语句for(i=1;i<50;i++ ) ;后变量i的值是()。
【】A)49 B)50 C)51 D)52
11.以下程序运行后的结果是()。
【】main()
{ int x[10]={0},i,k=3;
for(i=0;i<k;i++)
x[i]=x[i]+1;
printf("%d\n",x[k]);
}
A) 0 B) 1 C) 2 D) 不确定的值
12.若有以下说明:【】int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
char c='a',d,g;
则数值为4的表达式是()。
A)a['d'-c] B)a[4] C)a['d'-'c'] D)a[g-c]
13.若有语句:int a=4,*p=&a;下面均代表地址的一组选项是()。
【】A) a,p,&*a B) *&a,&a,*p C) *&p,*p,&a D) &a,p,&*p
14.以下程序运行后的输出结果是()。
【】int func(int a,int b)
{ return(a+b); }
void main()
{ int x=1,y=2,z=3,sum;
sum=func(func(x,y),z);
printf("%d\n",sum);
}
A)1 B) 2 C) 3 D) 6
15.在C语言中,定义如下结构体类型:【】struct data
{ int count;
char sex;
float score;
}var;
则结构体类型变量var占用内存的字节数为()。
A)1 B)4 C)9 D)5
程序综合分析题
16.已知‘P’字符的ASCII码是80,下面程序的运行结果是()。
【】main()
{char s='P';
s = s +1;
printf("%c %c %d ", s,s+1,s);
}
17.执行下列程序后,变量m的正确结果是多少()。
【】main()
{int m=1;
switch(m)
{case 1:m+=1;
case 2:m+=1; break;
case 3:m+=1; break;
default:m+=1;
}
printf("%d\n",m);
}
18.写出下列程序的运行结果()。
【】main( )
{int i=0;
for (;i<6;i++)
if (i%3==0)
{continue;}
else
{printf(“%d”,i);}
}
19.写出下列程序的运行结果()。
【】main()
{int x=0,i=1,s=0;
do
{
x++;
i=i*x;
s+=i;
} while (x<3);
printf("%d\n",s);
}
20.写出下列程序的运行结果()。
【】main()
{int i,j,sum=0;
for (i=3;i<=10; i+=3 )
for (j=6; j<=8; j+=2 )
sum++;
printf ("%d\n",sum);
}
21.写出下列程序的运行结果()。
【】main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10},i,s=0;
for (i=1;i<=6;i++)
if (a[i]%3!=0)
s=s+a[i];
printf("%d\n",s);
}
17.写出下列程序的运行结果()。
【】main()
{int x=3,y;
if (x<0) y=-1;
else if (x>0) y=1;
else y=0;
printf("%d,%d",x,y);
}
18.写出下列程序的运行结果()。
【】main()
{int i;
for(i=1;i<5;i++)
{ if(i%2)
{ printf("*");continue; }
printf("#");
}
printf("\n");
}
19.写出下列程序的运行结果()。
【】main()
{int x=0,a=0,b=0;
switch(x)
{case 0: b++;
case 1: a++;break;
case 2: a++;b++;
}
printf("%d,%d\n",a,b);
}
20.写出下列程序的运行结果()。
【】main( )
{int i=1;
for (;i<10;i++)
if (i%4==0)
{break;}
else
{printf("%d ",i);}
}
21.写出下列程序的运行结果()。
【】main()
{int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
int i=0,j=0,sum=0;
for(i=2,j=0;i>=0;j++,i--)
sum=sum+a[j][i];
printf("%d\n",sum);
}
22.写出下列程序的运行结果()。
【】int fun(int a, int b)
{int c;
a+=a; b+=b;
c=a+b;
return (c);
}
main()
{int m=2,n=4;
m=fun(m,n);
printf("%d\n",m);
}
23.写出下列程序的运行结果()。
【】main()
{int a []={5,6,7,8,9,10},*p;
p=a;
p++;
*(p+2)=2;
printf ("%d,%d\n",*p,*(p+2));
三、编程序题
24.从键盘输入一个正整数,编程判断该正整数是否能被3整除。
若是,则输出yes;否则输出no。
25.输入两个正整数,编程序将较大的那个输出。
26.编程序,求1!+2!+3!+ ……+20!的值。
27.从键盘输入10个整型数据,将其逆序输出。
25.输入两个正整数,编程序将他们的和输出。
26.编程序,将Fibonicci数列(1,1,2,3,5,8,13,21…………)的前20项存放在一维数组中,并输出。
27.编程序,求1+2+3+4+5+……+100的值。