C语言程序改错练习题

发布时间 : 星期四 文章C语言程序改错练习题更新完毕开始阅读

程序改错练习题

下面每个程序的划线处有语法或逻辑错误,请找出并改正,使程序符合题意。

1.求1?2?3?4???n main()

{ int sum; 正确:int sum=1; int n,i=1;

scanf(\ scanf(“%d”,&n); printf(“\\n”);

while(i

printf(\ printf(\}

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

main( ) { int max,j,m; int a[5];

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

for(j=1;j<=5;j++) for(j=0;j<5;j++) if(max>a[j]) if(max

printf(“下标:%d\\n最大值:%d”, j, max) printf(“下标:%d\\n最大值:%d”, m,max); }

3.用一个函数求两个数之和。

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

return ; return z; }

1

main() { float a,b;

int c; float c; scanf(\c=sum(a,b);

printf(\ printf(\}

4. x , y两个数中,让x中存较大的数,y存较小的数 #include main( ){

int x , y=200 , z=0; x=180; if ( x

z=x; x=y; y=z; 正确:{ z=x;x=y;y=z;} printf(“x=%d,y=%d\\n”,&x,&y); printf(“x=%d,y=%d\\n”,x,y); }

5.用指针作函数参数,对输入的两个整数按大小顺序输出。

swap(int *p1,*p2)

{ int *p; 正确:int t;

*p=*p1;*p1=*p2;*p2=*p; t=*p1;*p1=*p2;*p2=t; } main() { int a,b; int *q1,*q2;

scanf(\

&q1=a,&q2=b; q1=&a,q2=&b; if(a

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

main() { int n;

sum; 2

for(n=100;n<=300;n++) {

if(n%3=0) sum=sum*n; }

printf(“%ld ”,sum); }

7. 实现华氏温度转换为摄氏温度,公式为:c=main() { int c,f ; printf(\; scanf(\, &f); c=5/9*(f-32);

printf(\,c,f); }

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

main() { int i,n; int s; printf(\; scanf(\, n); for(i=1;i<=n;i++) ; s=*i;

printf(\,i,s);} 9、求一个4×4矩阵的对角线元素之和

main( )

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

printf(“Enter data:\\n”); for(i=0;i<=4;I++) for(j=0,j<=4;j++) scanf(“%d”,&a[i][j]); for(i=0;i<4;I++) for(j=0;j<4;j++) 5*(f-32),要求输出结果取2位小数。 9 3

sum=sum+a[i][j]; printf(“sum=]\\n”,sum); }

10. 编程计算下面分段函数?x?1x, ?输入0x, 输出y y???2x?10?x?10

main() ??3x?11x?10{ int x,y;

printf(“\\n Input x:\\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); }

11. 求表达式c?ab的值

#include #include int fun(int x, int y); main() {

int a,b; float f; scanf(“%d,%d”,a,b); if(ab>0) { f = fun(a,b); printf(\ else printf(“error!”);}

fun(x, y) { float result;

result = sqrt(a+b);

return; }

12、通过函数调用,求两个数之差

4

}

联系合同范文客服:xxxxx#qq.com(#替换为@)