海事大学C语言期末复习编程题文档格式.docx
《海事大学C语言期末复习编程题文档格式.docx》由会员分享,可在线阅读,更多相关《海事大学C语言期末复习编程题文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
%d"
&
m);
\nTheresultis%d\n"
fun(m));
yzj();
getch();
}
yzj()
FILE*IN,*OUT;
intc;
intt;
into;
IN=fopen("
in.dat"
"
r"
if(IN==NULL)
{printf("
ReadFileError"
OUT=fopen("
out.dat"
w"
if(OUT==NULL)
WriteFileError"
}for(c=1;
c<
=5;
c++)
{fscanf(IN,"
&
t);
o=fun(t);
fprintf(OUT,"
%d\n"
o);
fclose(IN);
fclose(OUT);
编写函数fun,函数的功能是:
求一组数
中大于平均值的数的个数。
例如:
给定的一组数为1,3,6,9,4,23,
35,67,12,88时,函数值为3。
请勿改动主函数
main和其它函数中的任何内容,仅在函
数fun的花括号中填入所编写的若干语句。
intfun(inta[],intn)
inti,k=0;
floats=0,ave;
for(i=0;
i<
n;
i++)
s+=a[i];
ave=s/n;
%f"
ave);
if(a[i]>
ave)k++;
returnk;
main()
inta[10]={1,3,6,9,4,23,35,67,12,88};
inty;
y=fun(a,10);
printf("
y=%d\n"
y);
yzj();
getch();
yzj()
intiIN[10],iOUT,i,j;
PleaseVerifyTheCurrerntDir..ItMayBeChanged"
PleaseVerifyTheCurrentDir..ItMayBeChanged"
for(j=0;
j<
10;
j++)
{for(i=0;
fscanf(IN,"
iIN[i]);
iOUT=fun(iIN,10);
iOUT);
计算n门课程
的平均值,计算结果作为函数值返回。
例如,若有5门课程的成绩是:
92,76,69,
58,88,则函数的值为72.599998。
floatfun(inta[],intn)
inti;
floaty=0;
y+=a[i];
y=y/n;
returny;
inta[]={92,76,69,58,88};
y=%f\n"
fun(a,5));
intiIN[10],i,j;
floatfOUT;
for(j=0;
5;
fOUT=fun(iIN,5);
%f\n"
fOUT);
程序的功能是:
把20个随机数存入一个数组,
然后输出该数组中的最大值。
其中确定最大
值的下标的操作在fun函数中实现,请给出该
函数的定义。
#defineVSIZE20
intvector[VSIZE];
intfun(intlist[],intsize)
inti,max=0;
for(i=1;
i<
size;
i++)
if(list[max]<
list[i])
max=i;
returnmax;
/**********End**********/
}
main()
{
clrscr();
for(i=0;
VSIZE;
vector[i]=rand();
Vector[%d]=%6d\n"
i,vector[i]);
i=fun(vector,VSIZE);
\nMaxnum:
Vector[%d]=%6d\n"
NONO();
NONO()
inti,t;
FILE*fp;
fp=fopen("
"
);
fprintf(fp,"
t=fun(vector,VSIZE);
fprintf(fp,"
t,vector[t]);
fclose(fp);
功能:
从键盘输入一个大于3的整数,调用函数fun判断
其是否素数,然后在main函数中输出相应的结论
信息。
例如:
7是素数,8不是素数。
请编写fun函数。
素数是
仅能被1和自身整除的数
-------------------------------------------------*/
voidmain()
intm,flag;
inputaninteger:
"
flag=fun(m);
if(flag)
%disaprime.\n"
m);
else
%disnotaprime.\n"
intfun(intn)
/**********Program**********/
inti;
intj;
j=1;
for(i=2;
{if(n%i==0)j=0;
returnj;
/**********End**********/
FILE*IN,*OUT;
intiIN,iOUT,i;
IN=fopen("
5.in"
if(IN==NULL)
{
OUT=fopen("
5.out"
if(OUT==NULL)
i++)
{
iIN);
iOUT=fun(iIN);
fclose(IN);
fclose(OUT);
计算并输出给定
整数n的所有因子之和(不包括1与自身)。
规定
n的值不大于1000。
n的值为855时,应输出704。
ints=0,i;
for(i=2;
if(n%i==0)s=s+i;
returns;
s=%d\n"
fun(855));
intiIN,iOUT,i;
for(i=0;
求一个
给定字符串中的字母的个数。
intfun(chars[])
s[i]!
='
\0'
;
if(s[i]>
a'
&
s[i]<
z'
||s[i]>
A'
Z'
)
k++;
charstr[]="
Bestwishesforyou!
intk;
k=fun(str);
k=%d\n"
k);
charsIN[80];
intiOUT,i;
{fscanf(IN,"
%s"
sIN);
iOUT=fun(sIN);
编写函数fun,函数的功能是:
从字符串中
删除指定的字符。
同一字母的大、小写按不
同字符处理。
若程序执行时输入字符串为:
turbocandborlandc++从键盘上输入字符:
n,
则输出后变为:
turbocadborladc++
如果输入的字符在字符串中不存在,则字符
串照原样输出。
请勿改动主函数main和其
它函数中的任何内容,仅在函数fun的花括号中填
入所编写的若干语句。
intfun(chars[],intc)
/**********Program**********/
char*q=s;
for(;
*q;
q++)
if(*q!
=c)*(s++)=*q;
*s=0;
staticcharstr[]="
turbocandborlandc++"
charch;
原始字符串:
%s\n"
str);
输入一个字符:
scanf("
%c"
ch);
fun(str,ch);
str[]=%s\n"
str);
chari[200];
charo[200];
fscanf(IN,"
i);
fun(i,'
n'
fprintf(OUT,"
编写函数fun求一个字符串的长度,在main
函数中输入字符串,并输出其长度。
intfun(char*p1)
char*p;
intn=0;
p=p1;
while(*p++)
n++;
returnn;
char*p,a[20];
intlen;
p=a;
pleaseinputastring:
\n"
gets(p);
len=fun(p);
Thestring'
slengthis:
len);
char*pIN,sIN[20];
pIN=sIN;
pIN);
iOUT=fun(pIN);
请编写一个函数fun,函数的功能是:
将主函数
中输入的字符串反序存放。
输入字符串"
abcdefg"
,则应输出"
gfedcba"
。
#include<
stdio.h>
conio.h>
#defineN81
charfun(char*str,intn)
inti,j;
charc;
for(i=0,j=n-1;
j;
i++,j--)/*或者for(i=0,j=n-1;
n/2;
i++,j--)*/
{c=*(str+i);
*(str+i)=*(str+j);
*(str+j)=c;
chars[N];
intl;
clrscr();
inputastring:
gets(s);
l=strlen(s);
fun(s,l);
Thenewstringis:
puts(s);
charsIN[20],*sOUT;
intiLENGTH;
7.in"
7.out"
iLENGTH=strlen(sIN);
sOUT=sIN;
fun(sIN,iLENGTH);
sOUT);
编写函数fun求1!
+2!
+3!
+……+n!
的和,在
main函数中由键盘输入n值,并输出运算
结果。
若n值为20,则结果为268040729
#include<
floatfun(intn)
float