c语言考试习题补充题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
\*******************found********************\
if (j % i == 0)(应改为:if(i%j==0)
break;
if(j >= k+1)
a[c++] = i;
}
for (i=0; i<c; i++)
{ printf("%4d",a[i]);
if ((i+1) % 4 == 0) printf("\n");
if(prime==1)(应改为:if(prime(i)==1;)
{ a[c]=i;
printf("%4d",a[c]);
++c;
}
}
七、求一维数组a中值为奇数的元素的平均值。
#include <conio.h>
#include <stdio.h>
double average( int arr[ ], int n )
{ k=sqrt(a[i]);
for ( j=2;j <= k; j++)
if (a[i] % j == 0) break;
if( j<=k )
/************found************/
s=s+____(2)____;(应填:a[i])
}
printf("Sum is: %d\n",s); }
\*******************found********************\
case 2: c2++;___2___;(应填:break)
case 3: c3++;
}
n /= 10;
}
}
main()
{
int n=123114350;
fun(n);
printf("\nn=%d c1=%d c2=%d c3=%d\n",n,c1,c2,c3);
}
}
三、将[2,100]之间的所有素数存放到一维数组a中,并输出这些素数。
#include <math.h>
#include <conio.h>
#include <stdio.h>
void main()
{ int a[100],i,j,k,m;
m = 0;
for ( i=2; i<=100; i++)
\*******************found********************\
___2___;(应填:n++)
}
return s;
}
main()
{
printf("%f\n", fun(50));
}
四、统计整数n的各个位上出现数字1、2、3的次数,并通过外部(全局)变量c1、c2、c3返回主函数。
{ int k=0,i; double s;
s = 0;
for ( i=0 ;i<n; i++)
\*******************found********************\
if (arr[i] % 2 = 1)(应改为:if(arr[i] % 2 ==1))
{ s = s + arr[i]; k++; }
{
int j; float aver;
\*******************found********************\
float s;(应改为:float s=0;)
for ( j=0; j<n; j++)
s += a[j];
aver = s / n;
return (aver);
}பைடு நூலகம்
void main()
s=___1___;(应填:s*i)
return s;
}
main()
{
int s;
int k,n;
scanf("%d",&n);
printf("The result is: %.2f\n", s);
}
八、求一维数组a中的最大元素及其下标。
#include <conio.h>
#include <stdio.h>
int max;
fun ( int arr[],int n )
{ int pos,i;
max = arr[0];
pos = 0;
if(i >= k+1)(应改为:if(j>=k+1))
a[m++] = i;
}
for (i=0; i<m; i++)
{ printf("%4d",a[i]);
if ((i+1) % 4 == 0) printf("\n");
}
}
四、求二维数组a中的最小值。
#include <conio.h>
#include <stdio.h>
{
k=(int)sqrt(i);
for ( j=2; j<=k; j++)
if (i % j == 0)
\*******************found********************\
continue;(应改为:break;)
\*******************found********************\
/************found************/
fun(a,4);(应改为:n= fun(a,10);)
printf("The max is: %d ,pos is: %d\n", max , n);
}
填空题
一.求一维数组a中非素数之和。
例如:如果数组a的元素为:2,3,5,7,8,9,10,11,12,13,15,17,则程序的输出应为:Sum is: 54。
#include <stdio.h>
int c1,c2,c3;
void fun(long n)
{
c1 = c2 = c3 = 0;
while (n)
{
\*******************found********************\
switch(___1___)(应填:n%10)
{
case 1: c1++; break;
#include <stdio.h>
float fun( float q )
{
int n;
float s;
n = 2;
s = 2.0;
\*******************found********************\
while (s___1___q)(应填:<=)
{
s=s+(float)(n+1)/n;
printf("The min is: %d\n",n);
}
五、求一维数组a中所有元素的平均值。
#include <conio.h>
#include <stdio.h>
float average( a,n)
\*******************found********************\
int a,n;(应改为:int a[],n;)
return (s/k) ;
}
void main()
{
int a[12]={10,4,2,7,3,12,5,34,5,9,21,18};
double s;
\*******************found********************\
s = average(a[12],12);(应改为:s = average(a,12);)
#include <stdio.h>
prime (int m)
{ int j,k;
k=(int)sqrt(m);
for ( j=2; j<=k; j++)
if (m % j == 0) return (0);
return (1);
}
void main()
{ int a[100],i,c=0,m,n;
min = arr[i][j];
return (min);
}
void main()
{ int a[3][3]={4,4,34,7,3,12,5,6,5},n;
\*******************found********************\
n = arrmin( a[0][0]);(应改为:n=arrmin(a);)
二.打印出1至1000中满足其个位数字的立方等于其本身的所有整数。本题的结果为:1 64 125 216 729。
#include <stdio.h>
main()
{ int i,g;
for(i=1;i<1000;i++)
{
/************found************/
g=i___1___10;(应填:%)
{ int a[12]={10,4,2,7,3,12,5,34,5,9,6,8};
printf("Theaverageis:%.2f\n",average(a,12));
}
六、将[m,n]之间的所有素数存放到一维数组a中,并输出这些素数。
#include <math.h>
#include <conio.h>
/************found************/
if(___2___)printf("%4d",i); }(应填:i==g*g*g)
printf("\n"); }
三、计算并输出下列级数的前n项之和Sn,直到Sn大于q为止,q的值通过形参传入。
Sn = 2/1 + 3/2 + 4/3 + …… + (n+1)/n
}
二、将[m,n]之间的所有素数存放到一维数组a中,并输出这些素数。
#include <math.h>
#include <conio.h>
#include <stdio.h>
void main()
{ int a[100],i,j,k,m,n,c=0;
printf("Please enter m,n(m<n):");
for ( i=1; i<n; i++)
if (max < arr[i])
{
max = arr[i];
/************found************/
i=pos(应改为:pos=i;)
}
return (pos);
}
void main()
{int a[10]={1,4,2,7,3,12,5,34,5,9},n;
printf("Enter m,n(m<n):");
scanf("%d,%d",&m,&n);
\*******************found********************\
for (i=m; i<=100; i++)(应改为:for ( i=m; i<=n; i++))
\*******************found********************\
改错题
一、求一维数组a中所有元素的平均值,结果保留两位小数。
#include <conio.h>
#include <stdio.h>
void main()
{ int a[10]={10,4,2,7,3,12,5,34,5,9},i;
\*******************found********************\
int arrmin( int arr[3][3])
{ int i,j,min;
\*******************found********************\
min=0;(应改为:min=arr[0];)
for ( i=0; i<3; i++)
for ( j=0; j<3; j++)
if (min > arr[i][j])
#include <math.h>
#include <stdio.h>
void main()
{ int a[12]={2,3,5,7,8,9,10,11,12,13,15,17},i,j,k,s;
/************found************/
____(1)____;(应填:s=0)
for ( i=0; i<12; i++)
int aver,s;(应改为:float aver,s;)
\*******************found********************\
s = 0;(应改为:s=a[o];)
for ( i=1; i<10; i++)
s += a[i];
aver = s / i;
printf("The aver is: %.2f\n", aver);
scanf("%d,%d",&m,&n);
\*******************found********************\
for ( i=m; i<=100; i++)(应改为:for ( i=m; i<=n; i++))
{
k=(int)sqrt(i);
for ( j=2; j<=k; j++)
}
五、程序的功能是计算y = 0! + 1! + 2! + 3! + 4! +……+ n!如输入n的值为5的话,则输出y值为154
#include <stdio.h>
int fun(int n)
{
int i;
int s;
s=1;
for (i=1; i<=n; i++)
\*******************found********************\
相关文档
最新文档