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

2019-08-01 23:23

if (a[i]>amax) amax=a[i]; return amax; 第72题 题号:379

功能:给定n个数据, 求最大值出现的位置(如果最大值出

现多次,求出第一次出现的位置即可)。

#include void wwjt();

int station(int s[],int n) {

int i,k; k=0;

for(i=1;i<=n;i++) if(s[i]>s[k]) k=i; return(k+1); 第73题 题号:37

功能:输入2个学生3门课的成绩,计算学生成绩平均分,

课程平均分和最高分.

例如:输入2名学生3门课的成绩分别为92,87,68,56, 92,84 则

学生1平均分:82.33 学生2平均分:77.33 课程1平均分:74.00 课程2平均分:89.50 课程3平均分:76.00 最高分为:92 #include void wwjt();

/*定义全局变量*/ /*学生成绩平均分*/ float StuAgv[2]; /*课程平均分*/ float CouAgv[3];

/*所有学生的所有课程最高分*/ float Max=0;

/*说明:需要在下面函数中把题干要求中的结果赋值到上面定义一变量中*/

void fun(float score[2][3]) {

答案: int i,j; float sum;

for(i=0;i<2;i++) /*计算第i个学生平均分*/ {

sum=0;

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

sum=sum+score[i][j]; StuAgv[i]=sum/3; }

for(j=0;j<3;j++) /*计算第j门课的平均分*/ {

sum=0;

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

sum=sum+ score [i][j]; CouAgv[j]=sum/2; }

Max=score[0][0]; for(i=0;i<2;i++) for(j=0;j<3;j++)

if(Max<=score[i][j]) {

Max=score[i][j]; }

return ;

第74题 题号:33

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

#include void wwjt();

long int fun(int n) {

答案: int i =1, sum =0; do

{ sum = sum + i; i++;

} while ( i <= n ); return sum;

第75题 题号:372

题目:用函数求一个N阶方阵右下三角元素的和(包括副

16

对角线上的元素)。 #include #include #define N 3 void wwjt();

int sum(int a[][N]) {

int i,j,k=0;

for(i=0;i

for(j=N-1-i;j

第76题 题号:326

功能:求一个大于10的n位整数的后n-1位的数,并作为函 数值返回。 #include #include\void wwjt(); int fun(int w) {

int n=0;int i=1; while(w>10) {n=n+i*(w); w/=10; i*=10;} return n;

第77题 题号:369

功能:编写函数判断一个整数m的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出

100~200之间满足条件的所有数。

include void wwjt(); (int m) {

int k,s=0; do

{s=s+m; m=m/10;

}while(m!=0); if(s%7==0)k=1;

else k=0; return(k);

第78题 题号:332

功能:根据整型参数n,计算如图公式的值。

#include #include\void wwjt(); t n) {

double a=1;int i; for(i=1;i

第79题 题号:349

功能:从低位开始取出长整型变量s奇数位上的数,依次

构成一个新数放在t中。 例如:当s中的数为:7654321时,t中的数为:7531。 #include void wwjt();

long fun (long s,long t) {

long sl=10; t = s % 10;

while(s > 0) { s = s/100; t = s*sl + t; sl = sl * 10;

第80题 题号:401

若x、y为奇数,求x到y之间的奇数和;若x、y为偶

数,则求x到y之间的偶数和。#include void wwjt();

int fun(int x,int y) {

int i,s=0;

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

功能:用辗转相除法求两个整数的最大公约数。

17

#include void wwjt(); int (int n,int m) {

int r,t;

if(n

while(r!=0)

{ n=m;m=r;r=n%m;} return(m);

第83题 题号:362

功能:求给定正整数m以内的素数之和。

例如:当m=20时,函数值为77。 #include void wwjt();

int fun(int m) {

int i,k,s=0;

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

第84题 题号:398 功能:编写函数fun求s=1^k+2^k +3^k + ......+N^k的值,

(1的K次方到N的K次方的累加和)。 #define K 4 #define N 5

#include void wwjt();

long fun(int n,int k) {

long power,sum=0; int i,j;

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

for(j=1;j

power *= i; sum += power; }

return sum;

第85题 题号:391

功能:将字符串中的小写字母转换为对应的大写字母, 其它字符不变。 #include \#include void wwjt();

void change(char str[]) {

int i;

for(i=0;str[i]!='\\0';i++) if(str[i]>='a' && str[i]<='z')

str[i]=str[i]-32; 第86题 题号:316

功能:统计出若干个学生的平均成绩,最高分以及得最高 分的人数。 例如:输入10名学生的成绩分别为92,87,68,56,92,

84,67,75,92,66,则输出平均成绩为77.9,

最高分为92,得最高分的人数为3人。

#include void wwjt(); float Max=0; int J=0;

float fun(float array[],int n) {

int i;float sum=0,ave; Max=array[0]; for(i=0;i

{ if(Max

sum=sum+array [i]; } ave=sum/n;

for(i=0;i

18

if(array [i]==Max) J++; return(ave);

第87题 题号:381

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

#include void wwjt();

int average_num(int a[],int n) {

int i,sum=0,k=0; double average; for(i=0;i

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

第88题 题号:310

功能:计算并输出给定整数n的所有因子之和(不包括1与 自身)。

注意:n的值不大于1000。

例如:n的值为855时,应输出704。#include void wwjt(); int fun(int n) {

int s=0,i;

for(i=2;i

题目:从键盘输入一个大写字母,要求改用小写字母输出。 #include void wwjt(); char fun(char c) {

答案: c=c+32; return c;

第90题 题号:400

功能:编写main程序调用函数fact求解从m个元素选n个元

素的组合数的个数。计算公式是:

组合数=m!/(n!.(m-n)!)。要求:m不能小于n,否则 应有容错处理。

说明:函数fact(x)的功能是求x!。 #include void wwjt(); long fact(int x) {

long y; int i; y=1;

for(i=1;i<=x;i++) y=y*i; return y; }

main() {

int m,n; long zhsgs;

printf(\请输入m和n:\\n\scanf(\while(m

printf(\和n输入错!请重新输入:\\n\

scanf(\ }

zhsgs=fact(m)/(fact(n)*fact(m-n));

printf(\从%d个元素选%d个元素的组合数的个数是:%d\\n\ wwjt();

第91题 题号:54

功能:求1到100之间的偶数之积。 #include void wwjt();

double fun(int m) {

double y=1;

19

int i;

for(i=1;i<=m;i++) if(i%2==0)y*=i; return y; 第92题 题号:352

功能:根据整型形参m,计算如下公式的值:y=1/2+1/4+

1/6+...+1/2m 。

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

double fun(int m) {

double y=0; int i;

for(i=1; i<=m; i++) {y+=1.0/(2*i); } return(y); 第93题 题号:383

功能:用函数实现字符串的复制, 不允许用strcpy()函数。 #include void wwjt();

void copy(char str1[],char str2[]) {

int i;

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

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

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

#include void wwjt();

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

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

for(i=1;i

{if(x[i]

第95题 题号:403

功能:编写函数fun,求任一整数m的

n次方。

include void wwjt();

long fun(int m,int n) {

long int x=1; int i;

for(i=1;i<=n;i++) x=x*m; return x;

第96题 题号:23

功能:从键盘输入一个大于3的整数,调用函数fun判断

其是否素数,然后在main函数中输出相应的结论 信息。

例如:7是素数,8不是素数。请编写fun函数。素数是

仅能被1和自身整除的数 #include void wwjt();

int fun(int n) {

int i; int j; j= 1;

for(i=2;i

return j;

第97题 题号:358

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

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

double fun(int m) {

double y=0; y=sin(m)*10; return(y);

20


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

下一篇:物流仓储知识点

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

马上注册会员

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