程序改错
1.计算下列分段函数的值,输入x输出y
的值
f(x)= x*2 x<0且x≠-3
sin(x) 0<=x<10 且x≠2且x≠3
x*x+x-1 其他
1)scanf(“%f,&x); 2)y=sin(3*x);
3)printf(“%f\n”,y);
2.输入两个整数n1,n2(n1 数范围内被3整除的数的个数。 1)scanf(“%d%d”,&n1,&n2); 2)n2=j; 3)if(j%3==0) n++; 3.输入一个长整数,求各位数字的平方和。如果输入的是负数,求其相反数的个位数字的平方和。例如输入-123输出1 4. 1)scanf(“%ld”,&in);2)While(in>0); 3)in=in/10; 4.从键盘上输入20个元素的值存入以为数组m中,然后将下标为奇数的元素赋值给数组n,最后输出数组n的内容。 1)for(a=0;a<20;a++) 2)if(a%2==1) 3)b++; 4)for(a=0;a<10;a++) 5.从键盘输入10个学生的成绩,统计最高分max,最低分min和平均分avg。 1)float a[8],min,max,avg; 2)scanf(“%f”,&a[i]); 3)max=min=avg=a[0]; 4)if(a[i] 6.一数列从第0项开始的前3项分别0,0,1,以后各项是相邻前三项和。求该数列的前n 项平方根之和sum,n的值通过形参传入。例如,当n=10时程序的输出结果应为23.197745. 1)double fun (int n) 2)sum=1.0; 3)s2=1.0; 4)for(k=4;k<=n;k++) 7.求1/2的圆面积,函数通过形参得到的圆半径。例:半径19.527,输出s=598.950017. 1)float fun(float r) 2)s=1.0/2*3.14159*r*r; 3)return s; 8.求1到10的阶乘和。 1)for(i=1;i<=10;i++) 2)s=s+fac(i); 3)float y=1; 4)return y; 9.求1!+2!+3!+ (10) 1)float x=1; 2)for(i=2;i<=m;i++) 3)x=x*i; 4)return x; 10.求1到20阶乘的和。 1)t=1; 2)t=t*j; 3)s=s+t; 4)printf(“jiecheng=%f\n”,s); 11. 求∏值,∏/2=1+1/3+1/3×2/5+1/3×2/5×3/7给定精度的变量eps输入0.0005时,输出3.140578 1)while(t>eps) 2)t=t*n/(2*n+1); 3)return 2*s; 12.计算t=1-1/2*2-1/3*3-……1/m*m 1)for(i=2;i<=m;i++) 2)y=j-1.0/(i*i); 3)return y; 13.计算y=1+1/3+1/5+……1/(2m-3) 1)double y=1; 2)for(i=1;i<=m;i++) 3)y+=1.0/(2*i-3); 14.求s=1+1/1+2+1/1+2+3+1/1+2+3+……n 1)scanf(“%d”,&n); 2)float fun(int n) 3)for(i=1;i<=n;i++) 4)s=s+1.0/t; 15.求圆周率近似值,直到最后一项小于等于0.0001. ∏/4=1-1/3+1/5-1/7+…… 1)#include”math.h” 2)float s=0,t=1,p=1; 3)while(fabs(t)>1e-4) 4)printf(“pi=%f\n”,s*4); 16.输出fabonacci数列前20项,定义成浮点型,输出整数部分。 1)printf(“%8.0f”,f1); 2)for(i=1;i<20;i++) 3)f1=f2;4)f2=f3; 18.统计400~499中4出现的个数。 1)while(x!=0) 2)if(y==4) k++; 3)return k; 4)k=k+num(i); 19.判断一个数字是否在一个正整数中,在返回1,不在返回0. 1)if(n==k) z=1; 2)m=m/10; 3)}while(m!=0); 4)return z; 21.一个5位数,判断它是不是回文数。 1)scanf(“%ld”,&x); 2)qian=x%10000/1000; 3)if(ge==wan&&shi==qian) 22.计算并输出k以内的最大10个能被13或17整除的自然数之和,若k=500,输出4622. 1)while((k>=2)&&(mc<=10)) 2)if(k%13==0||k%17==0) 3)k--; 4)return m; 23.求出两个非零正整数的最大公约数。 1)a=b; 2)b=t; 3)r=a%b;} 4)return b; 24. 计算正整数num的各位上数字之积。1){long k=1; 2)num/=10; 3)}while(num); 25.计算正整数num的各位上数字之积。 1)long k=1; 2)num/=10; 3)scanf(“%ld”,&n); 4)printf(“\n%ld\n”,fun(n)); 26.找出一个大于给定整数m且紧随m的素数,并作为函数值返回。 1){int i,k; 2)if(i%k==0) break; 3)if(k==i) 27.找出大于m的最小素数。 1)for(k=2;k 3)if(i<=k) 4)return i; 28.判断m是否为素数,若是返回1,否则返回0.主函数功能,按每行5个输出1-100之间的全部素数。 1)int fun(int m) 2)for(i=2;i 29.给定n个实数,输出平均值,并统计在平均值以下(含平均值)的实数个数。 1)float xa=0; 2)for(j=0;j 3) for(j=0;j 30.输入10个数,输出10个数的平均值。 1)for(i=1;i<10;i++) 2)float score[10],aver; 3)scanf(“%f”,&score[i]); 4)aver=average(score); 31.将数组元素逆序存放。 1)for(i=0;i<=m;i++) 2)x[i]=x[j] 3)inv(a,10); 4)printf(“%3d”,a[i]); 32.计算数组元素中值为正数的平均值。例:39,-47,21,2,-8,15,0,结果19.250000. 1)double sum=0.0; 2)while(s[i]!=’\0’) 3)sum=sum/c; 4)return sum; 34.用起泡法对10个整数从小到大排序。 1)void sort(int x[],int n) 2)for(j=0;j 4)sort(a,n) 36.求一个3行4列矩阵的外框元素之和,四角元素不能重复加。例:1,……12,和为65. 1) int i,j,s,s1=0,s2=0,s3=0,s4=0; 2)s2=s2+a[m-1][j]; 3) for(i=1;i 46.实现字符串的连接。 1)while(s1[i]!=’\0’) i++; 2)while(s2[j]!=’\0’) 3)s1[i]=s2[j]; 4)s1[i]=’\0’; 程序改错 ================================================== 题号:7471 /*------------------------------------------------------ 【程序改错】:只允许修改错误代码,其他代码不允许修改! -------------------------------------------------------- 功能:计算正整数num的各位上的数字之积。 例如:若输入:252,则输出应该是:20。 若输入:202,则输出应该是:0。 ------------------------------------------------------*/ #include num/=10; 【或】 num=num/10; 位置 3: } while(num) ; 【或】 while(num!=0) 题号:7383 /*------------------------------------------------------ 【程序改错】:只允许修改错误代码,其他代码不允许修改! -------------------------------------------------------- 功能:统计出若干个学生的平均成绩,最低分以及得最低分的人数。例如:输入10名学生的成绩分别为92,87,68,56,92,84,67, 75,92,66,则输出平均成绩为77.9,最低高分为56,得最低分的人数为1人。 ------------------------------------------------------*/ #include "stdio.h" float Min=0; int J=0; float fun(float array[],int n) { int i;float sum=0,ave; Min=array[0]; for(i=0;i 程序改错题 (注意:每小题只有1行有错误,答题时请指出错误位置并给出改正结果)1. 输出计算结果。 main() { int a=b=10; a+=b+5; b*=a+=10; printf("%d%d\n",a,b); } 2. 输出计算结果。 #include 输出程序运行结果。 #include 程序改错C
程序改错题
c语言程序改错