C语言程序设计题库文档格式.docx
《C语言程序设计题库文档格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计题库文档格式.docx(287页珍藏版)》请在冰点文库上搜索。
yzj()
FILE*IN,*OUT;
intn;
floati;
doubleo;
IN=fopen("
in.dat"
"
r"
);
if(IN==NULL)
{
ReadFileError"
}
OUT=fopen("
out.dat"
w"
if(OUT==NULL)
WriteFileError"
for(n=0;
n<
10;
n++)
{
fscanf(IN,"
i);
o=y(i);
fprintf(OUT,"
%ld\n"
o);
fclose(IN);
fclose(OUT);
答案:
----------------------
doublez;
if(x>
10)z=exp(x);
elseif(x>
-3)z=log(x+3);
elsez=sin(x)/(cos(x)+4);
return(z);
第2题(10.0分)
在键盘上输入一个3行3列矩阵的各个元素的值(值
为整数),然后输出主对角线元素的积,并在fun()
函数中输出。
#include"
stdio.h"
voidmain()
{
inti,j,s,a[3][3];
;
for(i=0;
i<
3;
i++)
for(j=0;
j<
j++)
%d"
a[i][j]);
s=fun(a);
Sum=%d\n"
s);
intfun(inta[3][3])
intm;
inti[3][3];
into;
for(m=0;
m<
m++)
i[m][n]);
o=fun(i);
%d\n"
intsum;
inti,j;
sum=1;
for(i=0;
sum=sum*a[i][i];
returnsum;
第3题(10.0分)
求1到100之间的偶数之积。
doublefun(intm)
ji=%f\n"
fun(100));
intiIN,i;
doubledOUT;
PleaseVerifyTheCurrerntDir..ItMayBeChanged"
PleaseVerifyTheCurrentDir..ItMayBeChanged"
5;
iIN);
dOUT=fun(iIN);
%f\n"
dOUT);
doubley=1;
inti;
for(i=1;
=m;
if(i%2==0)y*=i;
returny;
第4题(10.0分)
求出N×
M整型数组的最大元素及其所在的行坐标及
列坐标(如果最大元素不唯一,选择位置在最前面
的一个)。
例如:
输入的数组为:
123
4156
12189
10112
求出的最大数为18,行坐标为2,列坐标为1。
#defineN4
#defineM3
intRow,Col;
inta[N][M],i,j,max,row,col;
inputaarray:
"
N;
M;
a[i][j]);
\n"
max=fun(a);
max=%d,row=%d,col=%d"
max,Row,Col);
intfun(intarray[N][M])
intiIN[N][M],iOUT,i,j;
iIN[i][j]);
iOUT=fun(iIN);
%d%d%d\n"
iOUT,Row,Col);
intmax,i,j;
max=array[0][0];
Row=0;
Col=0;
{for(j=0;
if(max<
array[i][j])
{max=array[i][j];
Row=i;
Col=j;
return(max);
第5题(10.0分)
编写函数实现两个数据的交换,在主函数中输入任
意三个数据,调用函数对这三个数据从大到小排序。
voidswap(int*a,int*b)
/**********Program**********/
intx,y,z;
%d%d%d"
x,&
y,&
z);
if(x<
y)swap(&
y);
z)swap(&
if(y<
%3d%3d%3d"
x,y,z);
intm,n;
inti[2];
2;
i[m]);
swap(&
i[0],&
i[1]);
i[0]);
i[1]);
intk;
k=*a;
*a=*b;
*b=k;
第6题(10.0分)
求一个给定字符串中的数字字母的个数。
intfun(chars[])
voidmain(void)
charstr[]="
Beijing2008"
intk;
k=fun(str);
k=%d\n"
k);
charsIN[80];
intiOUT,i;
%s"
sIN);
iOUT=fun(sIN);
iOUT);
inti,k=0;
s[i]!
='
\0'
if(s[i]>
0'
&
s[i]<
9'
'
)
k++;
returnk;
第7题(10.0分)
对长度为7个字符的字符串,除首、尾字符外,将其
余5个字符按降序排列。
原来的字符串为CEAedca,排序后输出为CedcEAa。
ctype.h>
conio.h>
intfun(char*s,intnum)
chars[10];
clrscr();
输入7个字符的字符串:
gets(s);
fun(s,7);
\n%s"
NONO();
NONO()
chara[100];
FILE*rf,*wf;
rf=fopen("
"
);
wf=fopen("
fscanf(rf,"
&
a);
fun(a,7);
fprintf(wf,"
a);
fclose(rf);
fclose(wf);
}
inti,j;
chart;
num-1;
for(j=i+1;
if(s[i]<
s[j])
{t=s[i];
s[i]=s[j];
s[j]=t;
第8题(10.0分)
编写函数fun求1+2+3+...+n的和,在main函
数中由键盘输入n值,并输出运算结果。
请编写fun
函数。
若n值为2,则结果为3。
longfun(intn)
intyzj();
longintresult;
n);
result=fun(n);
result);
intyzj()
intiIN;
longintiOUT;
in11.dat"
out11.dat"
4;
return0;
inti;
longs=0;
for(i=1;
=n;
s=s+i;
returns;
第9题(10.0分)
判断一个整数w的各位数字平方之和能否被5整除,
可以被5整除则返回1,否则返回0。
#include"
conio.h"
intfun(intw)
voidmain()
Enterm:
"
m);
\nTheresultis%d\n"
fun(m));
intc;
intt;
}for(c=1;
c<
=5;
c++)
t);
o=fun(t);
intk,s=0;
do
{s=s+(w%10)*(w%10);
w=w/10;
}while(w!
=0);
if(s%5==0)k=1;
elsek=0;
return(k);
第10题(10.0分)
求一个四位数的各位数字的立方和
intfun(intn)
k=fun(1234);
intiIN,iOUT,i;
22.in"
22.out"
intd,k,s=0;
while(n>
0)
{d=n%10;
s+=d*d*d;
n/=10;
第11题(10.0分)
-----------------------------