C语言函数习题及答案(3)
}
main()
{
float score[10];
int i;
printf("Please input 10 scores:\n");
for(i=0;i<10;i++)
scanf("%f",&score[i]);
average(score);
printf("The average score is %.2f\n",【3】);
}
【1】A)i<=10 B)i++<10 C)++i<10 D)i<10
【2】A)array[i-1] B)array[i] C)array[i--] D)array[i++] 【3】A)score[8] B)score[0] C)array[8] D)score[9] 40. 以下程序用于输入不超过N个数的整数序列(用-1作为输入结束标志),然后统计出
从M1至M2各数在序列中出现的次数并显示输出。请将程序补充完整。
#include<stdio.h>
#define N 100
#define M1 3
#define M2 7
main()
{
int a[N],c[M2-M1+1]={0},i,n=0,x=0;
printf("Please input a sequence of number(%d-%d) which is ended with
-1:\n",M1,M2);
while(x!=-1)
{
scanf("%d",&x);
a[n]=x;
n++;
}
f(a,c,n);
printf("Repeating times of %d-%d in sequence of number is:\n",M1,M2);
for(i=0;i<=M2-M1;i++)
printf(“%d:%d\n”, 【1】);
printf("\n");
}
f(【2】)
{
int i;
for(i=0;i<n;i++)
if(a[i]>=M1 && a[i]<=M2)
【3】;
}
【1】A)M1+i:c[M1+i] B)M1+i+1:c[i]
C)M1+i:c[i] D)i:c[M1+i]
【2】A)f(a[],c[],n) B)f(int a[],int c[],int n)
C)f(a,c,n) D)f(int a[N],c[M2-M1+1],n)
【3】A)c[a[i]]++ B)c[a[i]-M2]++
C)a[c[i]]++ D)c[a[i]-M1]++
二.读程序写结果
1.
fun(int x,int y,int z)
{
z =x*x+y*y;
}
main ( )
{
int a=31;
fun (6,3,a);
printf ("%d", a);
}
2.
int f( )
{
static int i=0;
int s=1;
s+=i; i++;
return s;
}
main()
{
int i,a=0;
for(i=0;i<5;i++)
a+=f();
printf("%d\n",a);
}
3. 运行程序时,若从键盘输入asd af aa z67(回车),分析以下程序的输出结果。
#include <stdio.h>
int fun(char *str)
{
int i,j=0;
for(i=0;str[i]!=??;i++)
if(str[i]!=??)
str[j++]=str[i];
str[j]=??;
}
main()
{
char str[81];
int n;
printf("Input a string : ");
gets(str);
fun(str);
printf("%s\n",str);
}
4.
void swap(int *p1,int *p2)
{
int *t;
t=p1,p1=p2,p2=t;
printf("*p1=%d,*p2=%d\n",*p1,*p2);
}
main()
{
int x=10,y=20;
swap(&x,&y);
printf("x=%d,y=%d\n",x,y);
}
5.
#include<stdio.h>
void fun(int *s, int m, int n)
{
int t;
while(m<n)
{t=s[m]; s[m]=s[n]; s[n]=t; m++; n--;} }
main()
{
Int a[5]={1,2,3,4,5},k;
fun(a,0,4);
for(k=0;k<5;k++)
printf("%d ",a[k]);
}
6.
int fun(char s[])
{
int n=0;
while(*s<='9'&&*s>='0')
{
n=10*n+*s-'0';
s++;
}
return(n);
}
main()
{
char s[10]={'6','1','*','4','*','9','*','0','*'};
printf("%d\n",fun(s));
}
7.
#include<stdio.h>
Int fun(int x)
{
int y;
if(x==0||x==1)return(3);
y=x*x-fun(x-2)
return y;
}
main()
{
int x,y;
x=fun(3);
y=fun(4);
printf("%d, %d\n", x ,y);
}
8.
fun(int n,int *s)
{
int f1, f2;
if(n==1 || n==2) *s=1;
else
{
fun(n-1, &f1);
fun(n-2, &f2);
*s=f1+f2;
}
}
main()
{
int x;
fun(6,&x);
printf("%d\n",x);
}
三、填空题
1. 以下程序实现了计算x的n次方,请将程序填写完整。
float power(float x,int n)
{ int i;
float t=1;
for(i=1;i<=n;i++)
t=t*x;
【1】;
}
main( )
{ float x,y;
int n;
scanf("%f,%d",&x,&n);
y=power(x,n);
printf("%8.2f\n",y) ;
}
2. 以下程序实现了求两个数的最大公约数,请将程序填写完整。
int divisor(int a,int b)
{ int r;
r=a%b;
while(【2】)
{ a=b;b=r;r=a%b;}
return b;
}
void main()
{ int a,b,d,t;
scanf("%d %d",&a,&b);
if (a<b)
{ t=a; a=b; b=t; }
d=divisor(a,b);
printf("\n gcd=%d",d);
}
3. 以下函数my_cmp( )的功能是比较字符串s和t的大小,当s等于t时返回0,否则返
回s和t的第一个不同字符的ASCII码差值,即s>t时返回正值,s<t时返回负值。请将函数填写完整。
my_cmp(char *s,char *t)
{
while(*s == *t)
{
if (【3】) return 0;
++s; ++t;
}
return 【4】;
}
4. 以下程序的功能是:删去一维数组中所有相同的数,使之只剩一个。数组中的数已按由小
到大的顺序排列,函数返回删除后数组中数据的个数。请将程序填写完整。
例如,若一维数组中的数据是: 2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10
删除后,数组中的内容应该是: 2 3 4 5 6 7 8 9 10。
#include <stdio.h>
#define N 80
int fun(int a[], int n)
{ int i,j=1;
for(i=1;i<n;i++)
if(a[j-1]【5】a[i])
a[j++]=a[i];
return 【6】;
}
main( )
{
int a[N]={2,2,2,3,4,4,5,6,6,6,6,7,7,8,9,9,10,10,10},i,n=19;
printf("The original data:\n");
for(i=0;i<n;i++)
printf(“%d ”,a[i]);
n=fun(a,n);
printf("\nThe data after deleted: \n");
for(i=0; i<n;i++)
printf(“%d ”,a[i]);
}
四、编程题
1. 请用自定义函数的形式编程实现,求s=m!+n!+k!,m、n、k从键盘输入(值均小于7)。
2. 请用自定义函数的形式编程实现求10名学生1门课程成绩的平均分。
相关推荐:
- [高等教育]一年级家长课程教案
- [高等教育]封丘县人民医院深入推进纠正医药购销领
- [高等教育]2017年6月大学英语四级真题试卷及答案(
- [高等教育]2017年北京第二外国语学院文学院824中
- [高等教育]7 高中历史第7单元1861年俄国农奴制改
- [高等教育]【K12学习】4、实际测量-苏教版六年级
- [高等教育]药具培训试卷题库及部分参考答案
- [高等教育]本土电子元器件目录分销商如何赢得生意
- [高等教育]七年级岭南版美术教案
- [高等教育]书作文之书法活动通讯稿
- [高等教育]Endnote X 软件使用入门和用法总结(LS)
- [高等教育]嵌入式系统的现状及发展状况
- [高等教育]2012抗菌药物专项整治活动方案解读
- [高等教育]人教版新课本一年级数学下册期末试卷
- [高等教育]爱课程民法学观后感
- [高等教育]930机组使用说明书1
- [高等教育]煤气设备设施点检标准
- [高等教育]常见室内观叶植物图解
- [高等教育]312党员群众路线心得体会
- [高等教育]小学信息(苗版)第一册全册教案
- 在市---局2010党建大会上的讲话
- 《科哲》提纲及补充阅读材料(2010.7)
- 苏州高博软件技术职业学院论文开题报告
- 兼职导游管理的困境及对策探讨
- 基于通用设计理念的现代厨房产品语义研
- 康乐一中2010年至2011年度鼓号队、花束
- 第10章_数据收集整理与描述_期末复习课
- 2008年黑龙江林甸商贸购物中心营销策划
- 水硬度的测定实验报告
- 五分钟教你拍摄夜景光绘照
- 2014年临床妇产科三基三严试题及答案
- 0第二课 纾解压力第一站了解压力
- 解析建筑工程电气设备安装施工技术要点
- 地方性应用型本科高校“双师型”师资队
- 高考语文专题复习课件:小说阅读指导
- 装饰工程投标书2
- 大学生就业难问题探讨及对策
- English and Its History
- 青岛市城市房屋修缮工程质量监督管理办
- 初中英语形容词和副词的用法和练习题




