C语言上机程序设计题库及答案

C语言上机程序设计题库

【程序设计】

功能:根据整型形参m,计算如下公式的值:y=sin(m)*10。

【参考代码】

double y=0;

y=sin(m)*10;

return(y);

功能:若x、y为奇数,求x到y之间的奇数和;若x、y为偶 数,则求x到y之间的偶数和。

【参考代码】

int i,s=0;

for(i=x;i<=y;i+=2)

s=s+i;

return s;

功能:编写程序,实现矩阵(3行3列)的转置(即行列互换)

【参考代码】

int i,j,t;

for(i=0; i < 3; i++)

for(j=0; j < i; j++)

{ t=array[i][j];

array[i][j]=array[j][i];

array[j][i]=t; }

功能:求一个四位数的各位数字的立方和。

【参考代码】

int d,s=0;

while (n>0)

{d=n%10;

s+=d*d*d;

n/=10;

return s;

功能:请编一个函数void fun(int tt[M][N],int pp[N]), tt指向一个M行N列的二维数组,求出二维数组每列 中最小元素,并依次放入pp所指一维数组中。二维 数组中的数已在主函数中赋予。

【参考代码】

int i,j;

for(j=0;j<N;j++)

{

pp[j]=tt[0][j];

for(i=1;i<M;i++)

if(tt[i][j]<pp[j])

pp[j]=tt[i][j];

}

功能:求一组数中大于平均值的数的个数。

【参考代码】

int i,k=0;

float s=0,ave;

for(i=0;i<n;i++)

s+=a[i];

ave=s/n;

printf("%f ",ave);

for(i=0;i<n;i++)

if(a[i]>ave)k++;

return k;

题目:分别统计字符串中字母、数字、空格和其他字符出现的 次数(字符长度小于80)。

【参考代码】

for(i=0;c[i]!='\0';i++) if((c[i]>='A'&&c[i]<='Z')||(c[i]>='a'&&c[i]<='z')) a=a+1;

else if (c[i]>='0'&&c[i]<='9')

num=num+1;

else if (c[i]==' ')

b=b+1; else other=other+1;

功能:能计算从1开始到n的自然数中偶数的平方和,n由 键盘输入,并在main()函数中输出。

【参考代码】

int sum,i;

sum =0;

for(i=2;i<=n;i=i+2)

{

sum=sum+i*i;}

return(sum);

功能:求一批数中小于平均值的数的个数。

【参考代码】

int i,sum=0,k=0;

double average;

for(i=0;i<n;i++)

sum=sum+a[i];

average=sum*1.0/n;

for(i=0;i<n;i++)

if(average>a[i]) k++;

return(k);

功能:求出二维数组周边元素之和,作为函数值返回。二 维数组的值在主函数中赋予。

【参考代码】

int s=0;

int i,j;

for(i=0;i<M;i++)

s=s+a[i][0]+a[i][N-1];

for(j=1;j<N-1;j++)

s=s+a[0][j]+a[M-1][j];

return s;

功能:将主函数中输入的字符串反序存放。

【参考代码】

int i,j;

char c;

for(i=0,j=n-1;i<j;i++,j--) /*或者for(i=0,j=n-1;i<n/2;i++,j--)*/

{c=*(str+i);

*(str+i)=*(str+j);

*(str+j)=c;

}

功能:求一批数中最大值和最小值的差。

【参考代码】

int i,max,min;

max=min=a[0];

for(i=1;i<n;i++)

if(a[i]>max) max=a[i];

else if(a[i]<min) min=a[i];

return(max-min);

功能:用do-while语句求1~100的累计和。



联系客服:cand57il.com