C语言程序设计实践题目集锦
在本资源中,我们将讨论C语言程序设计中的各种实践题目,涵盖了函数、数组、循环、条件语句等多方面的知识点。通过解决这些题目,读者可以熟悉C语言的语法和编程思想,并提高自己的编程能力。
第1套填空题:FUN函数的实现
在这个题目中,我们需要编写一个FUN函数,该函数的功能是求10的阶乘。通过分析题目,我们可以发现,FUN函数的实现需要使用递归的思想,即在函数中调用自身来计算阶乘。
答案:long fun(int n){if (n>1) return (n*fun(n-1));return 1;}
第2套填空题:改错题
在这个题目中,我们需要改正一个程序的错误,该程序的功能是读取一个整数K,并输出它的所有因子。在这个题目中,我们需要注意两个地方的错误:一是IsPrime函数的声明,二是if语句中的逻辑错误。
答案:IsPrime(int n);{int i, m;m = 1;for (i=2; i<n; i++)if (!(n%i)){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2 and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}
第3套填空题:编程题
在这个题目中,我们需要编写一个函数fun,该函数的功能是返回低于平均分的认输,并将低于平均分的分数放在below所指的数组中。通过分析题目,我们可以发现,该函数需要使用循环来计算平均分,并将低于平均分的分数存放在数组中。
答案:int fun(int score[], int m, int below[]){int i, k=0, aver=0;for(i=0;i<m;i++)aver+=score[i];aver/=m;for(i=0;i<m;i++)if(score[i]<aver){below[k]=score[i];k++;}return k;}
第4套填空题:编程题
在这个题目中,我们需要编写一个函数fun,该函数的功能是输出斐波纳契数列。通过分析题目,我们可以发现,该函数需要使用递归的思想来计算斐波纳契数列。
答案:int fun(int n){if (n==0) return 0;else if (n==1) return 1;else return (fun(n-1)+fun(n-2));}