以下程序是从终端读入数据到数组中,统计其中正数的个数,并计算它们的和。请填空。main(){int i,a[20],sum,count;sum=count=【】;for(i=0; i<20;i++)scanf("%d",【】);for(i=0; i<20;i++) { if(a[i]>0) { count++; sum+=【】; } }printf("sum=%d.count=%d\n",sum,count);}
第1题:
以下程序中,函数 sumColumM的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。
define M 2
define N 4
void SumColumMin(int a[M][N],int *sum)
{ int i,j,k,s=0;
for(i=0;i〈N;i++)
{ k=0;
for(j=1;j<M;j++)
if(a[k][i]>a[j][i])k=j;
s+=【 】;
}
【 】 =s;
}
main( )
{ int x[M][N]={3,2,5,1,4,1,8,3},s;
SumColumMin(【 】);
printf("%d\n",s);
}
第2题:
以下程序统计从终端输入的字符中大写字母的个数。用号作为输入结束标志,请填空。
第3题:
【填空题】下面程序以每行4个数的形式输出a数组,请分析程序填空。 #define N 20 main() { int a[N],i; for(i=0;i<N;i++) scanf("%d",【1】); for(i=0;i<N;i++) { if(【2】) 【3】; printf("%3d",a[i]); } }
第4题:
以下程序调用findmax函数求数组中值最大的元素在数组中的下标,请选择填空: #include<stdio.h> findmax(int*s,int t,int*k) { int p; for(p=0,*k=p;p<t;p++) if(s[p]>s[*k])________; } main() { int a[10],i,k; for(i=0;i<10;i++)scanf("%d",&a[i]); findmax(a,10,&k); printf("%d,%d\n",k,a[k]); }
A.k=p
B.*k=p-s
C.k=p-s
D.*k=p
第5题:
试题14
以下程序调用fun函数把x中的值插入到a数组下标为k的数组元素中。主函数中,n存放a数组中数据的个数。请填空。
#include <stdio.h>
void fun(int s[], int *n, int k, int x)
{ int i;
for(i=*n-1; i>=k; i- - ) s[ ___ ]=s[i];
s[k]=x;
*n=*n+______;
}
main()
{ int a[20]={1,2,3,4,5,6,7,8,9,10,11}, i, x=0, k=6, n=11;
fun(a, &n, k, x);
for(i=0; i<n; i++) printf(“%4d”,a[i]); printf(“\n”);
}