好文档 - 专业文书写作范文服务资料分享网站

C语言专升本3程序改错题(3月10日终版)

天下 分享 时间: 加入收藏 我要投稿 点赞

计算机程序设计基础(C语言)

程序改错练习题及参考答案

F面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。

1 .求 n !=1 2 3 4 n

参考答案: main () { long int sum; sum=1 int n,i=1;

scan f(”%d”, n); printf( n ” ); scanf(

\%d\,&n);

while(i< n)

{ sum=sum*i; i++; while(i<=n) }

prin tf(\}

prin tf(\

2 .求一个数组中最大值及其下标。

mai n() { int max,j,m; int a[5]; for(i=1:i<=5:i++)

scanf( “ %d” ,a) max=a[0]; for(i=0;j<5;j++) for(i=1:i<=5:i++) for(i=0:i<5:i++) scanf(

“ %d\,&a[i]);

if(max>a[il) { max=a[j]; m=i; if(max

}

printf( 下标:%d\\n 最大值:%d }

,i, max) : printf(

下标':%d\\n 最大值 :%d ” 3 .用一个函数求两个数之和。

sum(x,y) { float z; z=x+y; float sum(float x, float y );

return: }

main () return(z);

{ float a,b; int c: scan f(\c=sum(a,b);

float c;

prin tf(\}

prin tf(\

4.编程计算下面分段函数,输入x,输出y

, m,max);

x 1

x 0

y

2x 1

0 x

10

3x 11 x

10

main ()

{ int x,y;

printf(

a

n );

scanf(

“ %d” ,x);

if(x<0)

y=x-1;

else if(x>=0||x<=10)

y=2x-1;

else

y=3x-1;

printf(

“ y=%d ”,&y);

}

5.

求 1+2+3+4+ mai +100 , 并输出? n ( ){

int i, sum

i=1;

while(i<=100)

{ sum=sum*i ;

i++ ;

} printf ( “

%c ” , sum ) }

6. 求100~300间能被3整除的数的和。

mai n()

{ int n;

Iona sum;

for(n=100 ;n<=300;

n++)

{

if(n %3=0)

sum=sum*

n;

}

printf( “ %ld

” ,sum);

}

7. 求3+4

int a=3,b=4;

main ()

{ int a,c;

scanf(

“ %&x);,

else if(x<=10) y=2*x-1;

y=3*x-1;

printf(

“ y=%d ”,sum=0;

sum=sum+i ;

printf( “% ” , sun)i ;

long sum=0;

if(n %3==0) sum=sum+n;

int c;

c=a+b; printf( } 8 .程序读入20

c=%d ” );

printf( “ c=%d ” ,c);

个整数,统计非负数个数,并计算非负数之和 #include “ stdio.h ”

mai n(){

int i, a[20], s , count ; s=

_____ s=co un t=0; for(i=0;i<20;i- fo _________

-) scanf( “ %d” ,

scanf( “ %d” ,a[il); &a[i]);

for(i=0;i<20;i++) { if(a[i]<0)

break; _______ con ti s +=a[i]; nue;

coun t++;

} printf( “ s=%f count=%fn ” ,s, count); }

printf( “ s=%d count=%d

9. x , y 两个数中,让x中存较大的数, y存较小的数

#i nclude printf(\

mai n( ){

int x , y=200 , z=0; }

x=180; { z=x;x=y;y=z;}

if ( x

z=x;

__________

printf( “ x=%d,y=%d ,&x,&y); }

5

c= - *(f-32),要求输出结果取

2位小数。

10. 实现华氏温度转换为摄氏温度,公式为:

9

main () float c,f :

{ int c,f ; prin tf(\scan f(\c=5/9*(f-32):

c=5.0/9*(f-32);

prin tf(\

11. 求一个3 X3矩阵的主对角线元素之和

mai n()

{ int a[3][3]; int sum; int i,j; int sum=0;

printf(

En ter datan ” );

,s,co un

t);

for(i=0;i<3;i++) for(i=0,j<=3;i++)

seanf( “ %f” ,&a[i】[il); for(i=0;i<3;i++) for

______

if (i ______

sum +=a[i][j];

printf( “ sum=] ,sum); }

12 .下面程序的功能是计算 n!

。 mai n() { int i,n ; int s ;

printf(\ scan f(\

prin tf(\

for(i=1:i<=n:i++): } 13.通过函数调用,求两个数之差

sub(x,v) { float z; z=x-y; return;

main () { float a,b; int c;

scanf(

“ %f,%f ” ,&a,&b);

c=sub(a,b);

printf( n“Ub is %f ” ,sub) }

for(j=0,j<3;j++) scanf(

d'% ,&a[i][j]);

for(j=0;j<3;j++) if (i==j)

int s=1 :

scan f(\for(i=1;i<=n:i++) //

s*=i; prin tf(\= %d\

float sub(float x,float y)

return 乙

float c;

printf( n“Ub is %f

去掉最后的分号

C语言专升本3程序改错题(3月10日终版)

计算机程序设计基础(C语言)程序改错练习题及参考答案F面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。1.求n!=1234n参考答案:main(){longintsum;sum=1intn,i=1;scanf(”%d”,n);printf(n
推荐度:
点击下载文档文档为doc格式
5c80k0jkfu5ap1c1kzfj507xn0uyj200qhb
领取福利

微信扫码领取福利

微信扫码分享