2020C语言考试题目带答案
1、在TC中,已知:int a=15,b=0;则表达式(a&b)&&b的结果为(A)
A .0 B.1 C.TRUE D.FLASE
2、设int a=10,则执行完语句a+=a-=a*a后,a的值是(D)
A .99
B .100 C. 110 D. -180
3、在C语言中,以下叙述不正确是(B)
A.一个C源程序可由一个或多个函数组成B在C程序中,注释说明只能位于一条语句后面
C.C程序的基本组成单位是函数
D. 一个C源程序必须包含一个main函数
4、在c语言中,以下程序的输出结果是(B)
long fun(int n)
{ long int s;
lf(n==1||n==2) s=2;
else s=n-fun(n-1);
return s;}
main()
{ printf(“%ld\n”,fun(3));}
A .2 B.1 C.3 D.4
5、在C语言中,有以下程序的输出结果为(B)
main()
{ int a=1,b;
for(b=1;b<=9;b++)
{ if(a>=8) break;
if(a%2==1){a+=5;continue;}
a-=3
}printf(“%d\n”,b);}
A.3
B.4
C. 5
D.6
改错题:
求1~500中所有素数之和
#include
#include
#include
Int orime(int n)
{ int yes,i;
if(n<=1) {return 0;}
yes=1;
for(i=2;i<=sqrt(n);i++)
/*下行有错*/
if(n%i!=0) (改为if(n%i= =0))
{ yes=0;break;}
return yes;}
void main()
{ int sum=0,i;
for(i>2;i<500;i++)
if(prime(i))
/*下行有错*/
sum+=1; (改为sum+=i;)
printf(”%d\n”,sum);}
此题结果是:21536
填空题:
求[1000,9999]中的四位数abcd满足等式a+c=b*d式的数之和。
#include
void main()
{ int a,b,c,d,,n;
long int s=0;
for(n=1000;n<=9999;n++)
{ a=n/1000;
b=(n-a*1000)/100;(=n/100%10 ) c=(n-a*1000-b*100)/10; ( =n/10%10)
d=n%10;
if(a+c= =b*d)
s=s+n;
printf(“%ld\n”,s);}
结果是:1078289.
程序设计题:
A,B,C是三个小于或等于100的正整数,当满足1/A2+1/B2=1/C2关系时。称为倒勾股数。求130<a+b+cB>C的倒勾股数有多少组。</a+b+c
#include
#include
void main()
{ int a,b,c,i=0;
c语言中的逗号表达式for(a=1;a<=100;a++)
for(b=1;b<=100;b++)
for(c=1;c<=100;c++)
if(1/pow(a,2)+1/pow(b,2)= =1/pow(c,2)&&(a+b+c)>130&&(a+b+c)<150&&a>b&&b>c) i=i+1;
printf(“%d”,i);}
此题结果为:1
26、在TC中,若有定义float a[5][4],则数组a可以有()个元素。20
27、在TC中,已知:int x=15,y=6,z;则下列语句的输出结果()2
printf(“%d\n”,z=(x%y,x/y))
解析:z=(3,2) 2 逗号表达式值是最后一个表达式2的值是2。答案:2
28.在TC中若有int x=4,y=5 ,则执行完表达式x*=y-1后,x值为()16
29.在TC中,执行下面程序片段的结果是()
int x=13
do
{ printf(“%2d”,--x);}
while(!x) 12
30、在TC中,设a=3,b=4,c=5,d=6,则表达式:b<a?a:c</a?a:c
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论