C语言程序改错基本题库
北京石油化工学院 12级复习题
程序改错
一、 下面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。 1.求1234n main()
{ long int sum; int n,i=1;
scanf(\printf(“\\n”); while(i { sum=sum*i; i++; } printf(\} 2.求一个数组中最大值及其下标。 main( ) { int max,j,m; int a[5]; for(j=1;j<=5;j++) scanf(“%d”,a); max=a[0]; for(j=1;j<=5;j++) if(max>a[j]) { max=a[j]; m=j; } printf(“下标:%d\\n最大值:%d”, j, max) } *3、 求 3+4 int a=3,b=4; main() { int a,c; c=a+b; printf(“c=%d”); } 4.用一个函数求两个数之与。 sum(x,y) { float z; z=x+y; return; } C语言程序改错基本题库 main() { float a,b; int c; scanf(\c=sum(a,b); printf(\} 5.用指针作函数参数,对输入的两个整数按大小顺序输出。 s *p1,*p2) { int *p; *p=*p1;*p1=*p2;*p2=*p; } main() { int a,b; int *q1,*q2; scanf(\&q1=a,&q2=b; if(a 前五题答案: 1、sum应初始化 即加入sum=1 第四行改为:scanf(“%d”,&n); 第六行改为:while(i<=n)