福建省高等学校计算机等级考试二级C语言填空.docx

上传人:b****5 文档编号:3429865 上传时间:2022-11-23 格式:DOCX 页数:13 大小:26.39KB
下载 相关 举报
福建省高等学校计算机等级考试二级C语言填空.docx_第1页
第1页 / 共13页
福建省高等学校计算机等级考试二级C语言填空.docx_第2页
第2页 / 共13页
福建省高等学校计算机等级考试二级C语言填空.docx_第3页
第3页 / 共13页
福建省高等学校计算机等级考试二级C语言填空.docx_第4页
第4页 / 共13页
福建省高等学校计算机等级考试二级C语言填空.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

福建省高等学校计算机等级考试二级C语言填空.docx

《福建省高等学校计算机等级考试二级C语言填空.docx》由会员分享,可在线阅读,更多相关《福建省高等学校计算机等级考试二级C语言填空.docx(13页珍藏版)》请在冰豆网上搜索。

福建省高等学校计算机等级考试二级C语言填空.docx

福建省高等学校计算机等级考试二级C语言填空

11.补充程序Ccon011.C,使其计算

#include

#include

voidmain()

{

intx;

/**/floatf;/**/

printf("Inputaninteger:

");

scanf("%d",&x);

f=/**/(fabs(x)-2)/(x*x+1)/**/;//切记使用fabs(x)否则有误

printf("F(x)=%f\n",f);

}

abs(x):

返回整数x的绝对值,返回值类型为整型

fabs(x):

返回双精度数x的绝对值,返回值类型为双精度类型

12.补充程序Ccon012.C,该程序用公式

计算圆周率的近似值。

#include

voidmain()

{doublepi=0;

longi,sign=1;

for(i=1;i<=10001;i+=2)

{

pi+=1.0*sign/i;

sign=/**/sign*(-1)/**/;//或sign=-sign

}

pi*=/**/4/**/;

printf("%f\n",pi);

}

13.补充程序Ccon013.C,程序实现从10个数中找出最大值和最小值。

#include

#include

intmax,min;

voidfind_max_min(int*p,intn)

{

int*q;

max=min=*p;

for(q=p;q

if(/**/*q>max/**/)max=*q;

elseif(min>*q)min=*q;

}

voidmain()

{

inti,num[10];

printf("Input10numbers:

");

for(i=0;i<10;i++)scanf("%d",&num[i]);

find_max_min(/**/num/**/,10);

printf("max=%d,num=%d\n",max,min);

}

21.补充程序Ccon021.c使其计算满足下式的一位整数A和B的值。

AB

×BA

--------------

403

#include

voidmain()

{

inta,b,k;

intplu=/**/403/**/;

for(a=1;a<10;a++)

for(b=1;b<10;b++)

{

k=(a*10+b)*/**/(b*10+a)/**/;

if(k==plu)printf("A=%d,B=%d\n",a,b);

}

}

22.补充程序Ccon022.C,使其实现输入若干整数,统计其中大于零和小于零的个数。

以零结束输入。

#include

voidmain()

{

intn,a,b;

/**/

a=0;b=0;

/**/

scanf("%d",&n);

while(/**/n!

=0/**/)

{

if(n>0)a++;

else/**/b++;/**/

scanf("%d",&n);

}

printf("Positiveinteger:

%d,negativeinteger:

%d\n",a,b);

}

23.补充程序Ccon023.C,该程序可测试哥德巴赫猜想:

从键盘上输入一个大于6的偶数,总能找到两个素数,似的这两素数之和正好等于该偶数。

#include

#include

intprime(intn)

{intk,flag=1;

for(k=2;k<=n/2+1;k++)

if(n%k==0){flag=/**/0/**/;break;}

returnflag;

}

voidmain()

{intnum,a;

clrscr();

do

{printf("Pleaseinputanevennumber:

");

scanf("%d",&num);

}while(num<=6||num%2==1);

for(a=2;a<=num/2+1;a++)

if(prime(a)&&prime(/**/num-a/**/))

printf("\n%d=%d+%d",num,a,num-a);

}

31.补充程序Ccon031.C,使其用牛顿迭代法求方程

在1.5附近的根。

#include

#include

/**/voidmain()/**/

{floatx,x0,f,f1;

x=1.5;

do

{x0=x;

f=((2*x0-4)*x0+3)*x0-6;

f1=(6*x0-8)*x0+3;

x=x0-f/f1;

}/**/while/**/(fabs(x-x0)>=1e-6);

printf("therootis:

%.2f\n",x);

}

32.补充程序Ccon032.C,该程序的功能使将输入的一行字符中的大写字母转变为相应的小写字母,小写字母则转变为相应的大写字母,其余字符不变。

#include

voidmain()

{chars[80];

inti;

printf("Pleaseinputastring:

");

for(i=0;((s[i]=getchar())!

='\n')&&(i<80);i++);

s[i]='\0';

for(i=0;s[i]!

='\0';/**/i++/**/)

{

if(s[i]>='a'&&s[i]<='z')

s[i]=s[i]-32;

elseif(/**/s[i]>='A'&&s[i]<='Z'/**/)

s[i]=s[i]+32;

printf("%c",s[i]);

}

}

33.补充程序Ccon033.C,其中main函数通过调用average函数计算数组元素的平均值。

#include

floataverage(int*pa,intn)

{

intk;

/**/floatavg=0;/**/

for(k=0;k

avg=avg+/**/*(pa+k)/**/;

avg=avg/n;

returnavg;

}

voidmain()

{inta[5]={20,30,45,64,23};

floatm;

m=average(/**/a/**/,5);

printf("Average=%f\n",m);

}

41.补充程序ccon041.c使其实现从键盘输入一个同学的姓名(如“Jack”),输出问候该同学的信息(如“Hello,Jack!

”)。

/**/#include/**/

main()

{/**/char/**/str[11];

printf("Pleaseinputaname:

\n");

scanf("%s",str);

printf("Hello,%s!

\n",str);

getch();

}

42.补充程序ccon042.c使程序中的sort()函数用冒泡法对数组a中的m个元素从大到小排序。

#include

#include

voidsort(inta[],intm)

{inti,j,t,swap;

for(i=0;i

{

swap=0;

for(j=0;j

{

if/**/(a[j]

{

swap=1;

t=a[j];

a[j]=/**/a[j+1]/**/;

a[j+1]=t;

}

}

if(!

swap)break;

}

}

voidmain()

{

inta[]={23,55,8,32,18,2,9};

inti,k=sizeof(a)/sizeof(int);

sort(a,k);

for(i=0;i

printf("%d",a[i]);

printf("\n");

getch();

}

43.补充程序ccon043,使程序中的fun()函数能用勾股定理判断一个三角形是否为直角三角形,即输入一个三角形的三边长a,b,c,若能构成直角三角形则返回1,不能则返回0。

#include

#include

intfun(/**/floata,floatb,floatc/**/)

{

floattemp;

intbTrue=0;

if(a

{temp=a;

a=b;

b=temp;

}

if(a

{temp=a;

a=c;

c=temp;

}

if(fabs(/**/a*a/**/-(b*b+c*c))<1.0e-15)

bTrue=1;

returnbTrue;

}

main()

{

floata,b,c;

printf("Pleaseinputthreenumbers:

\n");

scanf("%f%f%f",&a,&b,&c);

if(fun(a,b,c)==1)

printf("Yes\n");

else

printf("No\n");

getch();

}

51.补充程序Ccon051.C,使其实现从键盘输入一个整数,输出该数的平方。

#include

main()

{intx;

printf("Pleaseinputanumber:

\n");

scanf("%d",/**/&x/**/);

printf("%d*%d=%d\n",x,x,/**/x*x/**/);

getch();

}

52.补充程序Ccon052.C,使程序中的sort()函数用选择法对数组a中的m个元素从小到大排序。

#include

#include

voidsort(inta[],intm)

{inti,j,k,t;

for(i=0;i

{k=i;

for(j=i+1;j

if(a[j]

if(k!

=i)

{t=a[k];

a[k]=a[i];

a[i]=/**/t/**/;

}

}

}

voidmain()

{

inta[]={72,25,58,32,2,15,7,64};

inti,m=sizeof(a)/sizeof(int);

sort(a,m);

for(i=0;i

printf("%d",a[i]);

printf("\n");

getch();

}

53.补充程序Ccon053.C,使程序中的fun()函数,能根据三角形三边长a,b,c,用公式

,s=(a+b+c)/2计算这个三角形的面积(规定:

若这三条边不能构成三角形,返回-1)。

#include

#include

/**/float/**/fun(floata,floatb,floatc)

{

floats,area;

s=/**/(a+b+c)/2/**/;

s=s*(s-a)*(s-b)*(s-c);

if(s<0)

area=-1;

else

area=sqrt(s);

returnarea;

}

main()

{

floata,b,c,area;

printf("Pleaseinputthreenumbers:

\t");

scanf("%f%f%f",&a,&b,&c);

area=fun(a,b,c);

printf("Areais:

%.2f\n",area);

getch();

}

61.补充程序Ccon061.C,使其从键盘输入一个4行4列的二维整数数组表示4×4阶矩阵,并计算第1列元素之和。

如输入:

1234

5678

9101112

13141516

输出:

28

#include

#include

main()

{

inti,/**/j/**/;

inta[4][4],sum;

sum=/**/0/**/;

printf("Pleaseinput16numbers:

\n");

for(i=0;i<4;i++)

for(j=0;j<4;j++)

scanf("%d",&a[i][j]);

for(i=0;i<4;i++)

/**/sum+=a[i][0];/**/

printf("%d\n",sum);

getch();

}

62.补充程序Ccon062.C,使程序中的fun()函数用二分法在已按从小到大排好序的数组a中查找q,若找到第一个q则返回对应的下标,没找到返回-1。

#include

intfun(inta[],intn,/**/intq/**/)

{

intleft,right,mid;

left=0;

right=n-1;

while(left<=right)

{mid=/**/(left+right)/2/**/;

if(q

elseif(q>a[mid])left=mid+1;

elsereturnmid;

}

return-1;

}

main()

{inta[]={3,4,6,11,17,22,31,45};

intk,n;

n=sizeof(a)/sizeof(int);

k=fun(a,n,31);

printf("%d\n",k);

getch();

}

63.补充程序Ccon063.C,使其中的fun()函数判断输入的一个点(x,y)是否位于坐标在原点,半径为r(r>0)的圆内。

#include

#include

intfun(/**/floatr/**/,floatx,floaty)

{

intbIn;

bIn=/**/sqrt(x*x+y*y)/**/

returnbIn;

}

main()

{

floatr=-1,x,y;

intbIn;

while(r<0)

{printf("Pleaseinputradiusr(r>0):

\n");

scanf("%f",&r);

}

printf("Pleaseinputthedot(x,y):

\n");

scanf("%f%f",&x,&y);

bIn=fun(r,x,y);

if(bIn==1)

printf("inthecircle!

\n");

else

printf("outoftheCircle!

\n");

getch();

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1