教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

C语言程序设计课程期末练习题(3)

来源:网络收集 时间:2026-09-06
导读: 1. 补充完整下面的函数定义,计算出1+1*3+2*3+...+n*3的值并返回。 int FF(int n) { int i,s=1; //在下面添上一行for循环语句,循环变量为i,累加变量为s return s; } 答案: for(i=1;i=n;i++) s+=i*3; 2. 根据函数

1. 补充完整下面的函数定义,计算出1+1*3+2*3+...+n*3的值并返回。

int FF(int n) {

int i,s=1;

//在下面添上一行for循环语句,循环变量为i,累加变量为s

return s;

}

答案: for(i=1;i<=n;i++) s+=i*3;

2. 根据函数原型“int FF(int a[], int n)”,编写函数定义,计算并返回数组a[n]中所有元素之和。

答案:int FF(int a[], int n)

{

int i,sum=0; //1分

for(i=0; i<n; i++) sum+=a[i]; //4分

return sum; //6分

}

3. 补充完整下面函数定义中while循环的循环体,该函数的功能是求出并返回由字符指针ptr所指向的字符串中包含的小写英文字母的个数。

int fun(char* ptr)

{

int n=0; //使用n作为统计变量

while(*ptr) { //在下面补充合适的函数体内容

}

return n;

}

答案:

if(*ptr>='a' && *ptr<='z') n++; //3分

ptr++; //6分

4. 编写一个主函数,计算并输出表达式1+22+32+...+102的值。

答案:

#include<stdio.h>

void main()

{

int i, s=0; //1分

for(i=1; i<=10; i++) s+=i*i; //4分

printf("s=%d\n",s); //6分

}

注:若s的初值为1,则循环变量i的初值应修改为2。

5. 补充完整下面的函数定义,要求返回二维数组a[m][n]中所有元素的平均值。假定在计算过程中采用变量s存放累加值,采用i和j作为扫描数组的循环变量。

double Mean(double a[][N],int m,int n)

{

int i,j;

double s=0.0;

//在下面添上合适的for双重循环语句

return s/(m*n);

}

答案:

for(i=0; i<m; i++) //1分

for(j=0; j<n; j++) //2分

s+=a[i][j]; //6分

6. 根据函数原型“int DD(int a[], int n, int MM)”编写函数定义,利用双重for 循环统计出数组a[n]中任何两个不同元素的值等于MM值的配对个数,然后返回统计结果。如假定a[i]+a[j]等于MM,同时i≠j,则为一个配对。

int DD(int a[], int n, int MM)

{

int i,j,c=0; //用i和j作为循环变量,用c作为统计变量

//在下面补充一个双重for循环语句

答案:

for(i=0; i<n; i++) //1分

for(j=i+1; j<n; j++) //2分

if(a[i]+a[j]==MM) c++; //6分

7. 完善下面程序,该程序功能是从键盘上输入10个整数到一维数组a[10]中,然后按照下标从大到小的次序输出数组a[10]中的每个元素值,元素值之间用一个空格分开。

#include<stdio.h>

void main()

{

int a[10],i; //用i作为循环变量

printf("从键盘输入10个整数: \n");

//向下补充程序内容,用两个for循环实现

printf("\n");

}

答案:

for(i=0; i<10; i++) scanf("%d",&a[i]); //3分

for(i=9; i>=0; i--) printf("%d ",a[i]); //6分

注:第1行中的&a[i]也可替换为a+i

C语言程序设计课程期末练习题(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/110231.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)