c语言程序设计题目及答案(5)

2019-08-01 23:23

---------------------- 第98题 题号:335

功能:求一个n位自然数的各位数字的积。(n 是小于10的 自然数) #include #include\void wwjt(); long fun(long n) {

long d,s=1; while (n>0) {d=n; s*=d; n/=10; }

return s;

---------------------- 第99题 题号:509

功能:编写函数fun其功能是:根据整型形参m,计算如下

公式的值:y=1+1/3+1/5+1/7+?+1/(2m+1)

例如:若m=9,则应输出:2.133256 #include void wwjt();

double fun(int m) {

double y=1; int i;

for(i=1; i<=m; i++) {y+=1.0/(2*i+1); } return(y);

---------------------- 第100题 题号:22

功能:从键盘为一维整型数组输入10个整数,调用fun

函数找出其中最小的数,并在main函数中输出。

请编写fun函数。 #include \void wwjt();

int fun(int x[],int n) {

int min,i; min=x[0];

for(i=1;i

{if(x[i]

---------------------- 第101题 题号:377

功能:编写函数用选择排序法对数组中的数据进行从小到 大的排序。 #include #include void wwjt();

void sort(int a[],int n) {

int i,j,k,t;

for(i=0;i

for(j=i+1;ja[j]) k=j; if(k!=i) {t=a[i]; a[i]=a[k]; a[k]=t; } }

---------------------- 第102题 题号:321

/功能:编写函数fun其功能是:根据整型形参m,计算如下 公式的值:

y=1/2!+1/4!+?+1/m!(m是偶数) #include void wwjt();

double fun(int m) {

答案:double y=0.0; int i,j; double s=1;

for (i=2;i<=m;i+=2) {

for(j=i-1;j<=i;j++) s=s*j;

21

y=y+1.0/s; }

return y;

第103题 题号:328

功能:求k!(k〈13),所求阶乘的值作为函数值返回。 (要求使用递归) include #include\void wwjt();

long fun(int k) {

if (k>0)

return(k*fun(k-1)); else if(k==0) return 1L;

---------------------- 第104题 题号:354

功能:求小于lim的所有素数并放在aa数组中,该函数返回 所求出素数的个数。 #include #include #define MAX 100 void wwjt();

int fun(int lim,int aa[MAX]) {

int n=0; int i,j;

for(i=2;i<=lim;i++) {for(j=2;j

return n;

第105题 题号:325

功能:在键盘上输入一个3行3列矩阵的各个元素的值(值

为整数),然后输出主对角线元素的平方和,并在

fun()函数中输出。 #include void wwjt();

main() {

int i,j,s,a[3][3];; for(i=0;i<3;i++) {

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

scanf(\ }

s=fun(a);

printf(\ wwjt(); }

int fun(int a[3][3]) {

int sum; int i; sum=0;

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

sum=sum+a[i][i]*a[i][i]; return sum;

第106题 题号:390

功能:编写函数求1~100中奇数的平方和。结果为166650。 #include void wwjt();

float sum(int n) {

float s=0; int i;

for(i=1;i<=n;i=i+2) s=s+i*i; return(s);

第107题 题号:396

功能:编写函数fun用比较法对主程序中用户输入的具有10

个数据的数组a按由大到小排序,并在主程序中输出 排序结果。 #include void wwjt();

int fun(int array[], int n)

22

{

int k,j,t;

for (k=0;k

if (array[k]

t=array[k];

array[k]=array[j]; array[j]=t; }

第108题 题号:384

功能:产生20个[30,120]上的随机整数放入二维数组a[5][4]

中,求每行元素的和。 #include \#include void wwjt();

void row_sum(int a[5][4],int b[5]) {

int i,j;

for(i=0;i<5;i++) { b[i]=0;

for(j=0;j<4;j++) b[i]=b[i]+a[i][j]; }

第109题 题号:368

功能:求一分数序列2/1,3/2,5/3,8/5,13/8,21/13? 的前n项之和。

说明:每一分数的分母是前两项的分母之和,每一分数的

分子是前两项的分子之和 例如:求前20项之和的值为32.660259。

#include void wwjt(); float fun(int n) {

int i;

float f1=1,f2=1,f3,s=0; for(i=1;i<=n;i++) {f3=f1+f2; f1=f2; f2=f3;

s=s+f2/f1; }

return s;

第110题 题号:452

功能:有一个一维数组score,内放10个学生的成绩,用一

个函数来求平均成绩。

个学生的成绩分别为92,87,68,56,92,84,

70,65,90,60 则平均成绩为:76.400000

#include void wwjt();

float average (float array[10]) {

int i;

float aver,sum=array[0]; for(i=1;i<10;i++) sum=sum+array[i]; aver=sum/10; return aver; 第111题 题号:330

功能:计算出k以内最大的10个能被13或17整除的自然数之 和。(k〈3000)。 #include #include\void wwjt();

int fun(int k) {

int a=0,b=0;

while((k>=2)&&(b<10)) {if((k==0)||(k==0)) {a=a+k;b++;} k--; }

return a;

第112题 题号:363

功能:求一个给定字符串中的字母的个数。

#include void wwjt();

23

s[]) return 0; } {

int i,k=0;

for(i=0;s[i]!='\\0';i++)

if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z') k++;

return k;

----------------------

第113题 题号:315

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

例如:输入字符串“abcdefg”,则应输出“gfedcba”。 #include #include #include #define N 81 void wwjt();

void fun(char *str,int n) {

int i,j; char c;

for(i=0,j=n-1;i

for(i=0,j=n-1;i

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

第114题 编写一程序,实现两个字符串的连接(不用strcat()函数)。 #include #include main()

{int i,j; char a[10],b[10]; gets(a); gets(b);i=0,j=0; while(a[i]!='\\0')i++; while(b[j]!='\\0') a[i++]=b[j++]; a[i]='\\0'; b[j]='\\0';

printf(\

24


c语言程序设计题目及答案(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:物流仓储知识点

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: