全国计算机二级C语言程序设计题Word文档格式.docx
- 文档编号:381839
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:133
- 大小:225.44KB
全国计算机二级C语言程序设计题Word文档格式.docx
《全国计算机二级C语言程序设计题Word文档格式.docx》由会员分享,可在线阅读,更多相关《全国计算机二级C语言程序设计题Word文档格式.docx(133页珍藏版)》请在冰点文库上搜索。
123321"
abcdCBA"
};
inti;
printf("
Enterastring:
"
);
gets(s);
\n\n"
puts(s);
if(fun(s))
printf("
YES\n"
else
NO\n"
/************************************/
out=fopen("
"
w"
4;
i++)
if(fun(test[i]))
fprintf(out,"
else
fclose(out);
}
题目二迭代法求给定多项式的值
3.编写函数fun,其功能是:
根据以下公式求π的值(要求精度,即某项小于时停止迭代)。
程序运行后,若输入精度,则程序应输出为…。
doublefun(doubleeps)
doubles=,s1=;
intn=1;
while(s1>
=eps)/*当某项大于精度要求时,继续求下一项*/
{s1=s1*n/(2*n+1);
/*求多项式的每一项*/
s=s+s1;
/*求和*/
return2*s;
main()
{doublex;
voidNONO();
Inputeps:
);
scanf("
%lf"
&
x);
\neps=%lf,PI=%lf\n"
x,fun(x));
NONO();
题目三迭代法求给定方程的根
3.编写函数fun,其功能是:
利用下面的简单迭代方法求方程cos(x)-x=0的一个实根。
迭代步骤如下:
(1)取x1初值为;
(2)x0=x1,将x1的值赋给x0;
(3)x1=cos(x0),求出一个新的x1;
(4)若x0-x1的绝对值小于,执行步聚(5),否则执行步聚
(2);
(5)所求x1就是方程cos(x)-x=0的一个实根,作为函数值返回。
程序将输出结果Root=。
doublefun()
doublex0,x1;
x1=;
do
x0=x1;
x1=cos(x0);
}while(fabs(x0-x1)>
=1e-6);
returnx1;
voidNONO();
Root=%f\n"
fun());
题目四二维数组三角元素操作1
3.程序定义了N×
N的二维数组,并在主函数中自动赋值。
请编写函数fun(inta[][N],intn),该函数的功能是:
使数组左下半三角元素中的值乘以n。
例如,若n的值为3,a数组中的值为:
则返回主程序后a数组中的值应为:
#defineN5
voidfun(inta[][N],intn)
inti,j;
N;
for(j=0;
j<
=i;
j++)
a[i][j]=a[i][j]*n;
{
inta[N][N],n,i,j;
*****Thearray*****\n"
i<
i++)
{
j<
j++)
a[i][j]=rand()%10;
%4d"
a[i][j]);
\n"
n=rand()%4;
n=%4d\n"
n);
fun(a,n);
*****THERESULT*****\n"
for(j=0;
j++)
a[i][j]);
/******************************/
a[i][j]=i*j+1;
fun(a,9);
fprintf(out,"
fprintf(out,"
fclose(out);
/******************************/
题目四二维数组三角元素操作2
3.下列程序定义了N×
请编写函数fun(int
a[][N]),该函数的功能是:
将数组左下半三角元素中的值全部置成0。
例如a数组中的值为:
197
238
456
097
008
000
voidfun(inta[][N])
a[i][j]=0;
/*将数组左下半三角元素中的值全部置成0*/
voidmain()
FILE*wf;
inta[N][N],i,j;
intb[N][N]={1,9,7,2,4,2,3,8,1,2,4,5,6,7,5,4,0,6,8,0,2,7,1,6,4};
system("
CLS"
*****Thearray*****\n"
i++)/*产生一个随机的5*5矩阵*/
{for(j=0;
{a[i][j]=rand()%10;
fun(a);
THERESULT\n"
j++)
wf=fopen("
fun(b);
fprintf(wf,"
b[i][j]);
fclose(wf);
/*****************************/
题目四二维数组三角元素操作3
请编写函数fun(inta[][N],intm),该函数的功能是使数组右上半三角元素中的值乘以m。
例如,若m的值为2,a数组中的值为:
voidfun(inta[][N],intm)
=j;
a[i][j]=a[i][j]*m;
/*右上半三角元素中的值乘以m*/
inta[N][N],m,i,j;
{a[i][j]=rand()%20;
}
m=rand()%4;
m=%4d\n"
m);
fun(a,m);
for(j=0;
a[i][j]=i*j;
fun(a,8);
{for(j=0;
题目五二维数组元素求最值
3.请编写函数fun,其功能是:
找出2×
M整型二维数组中最大元素的值,并将此值返回调用函数。
#defineM4
intfun(inta[][M])
inti,j,max=a[0][0];
2;
M;
if(max<
a[i][j])
max=a[i][j];
returnmax;
{intarr[2][M]={5,8,3,45,76,-4,12,82};
max=%d\n"
fun(arr));
NONO();
voidNONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。
*/
FILE*wf;
intarr[][M]={5,8,3,90,76,-4,12,82};
wf=fopen("
fprintf(wf,"
max=%d\n"
fclose(wf);
题目六二维数组周边元素1
3.下列程序定义了N×
N的二维数组,并在主函数中赋值。
请编写函数fun,函数的功能是:
求出数组周边元素的平均值并作为函数值返回给主函数中的s。
例如,若a数组中的值为:
0 1 2 7 9
1 9 7 4 5
2 3 8 3 1
4 5 6 8 2
5 9 1 4 1
则返回主程序后s的值应为。
#include<
doublefun(intw[][N])
inti,j,k=0;
doubleav=;
i++)
if(i==0||i==N-1||j==0||j==N-1)/*只要下标中有一个为0或N-1,则它一定是周边元素*/
{av=av+w[i][j];
/*将周边元素求和*/
k++;
returnav/k;
/*求周边元素的平均值*/
inta[N][N]={0,1,2,7,9,1,9,7,4,5,2,3,8,3,1,4,5,6,8,2,5,9,1,4,1};
inti,j;
doubles;
*****Thearray*****\n"
for(i=0;
{for(j=0;
{printf("
%4d"
\n"
s=fun(a);
*****THERESULT*****\n"
Thesumis:
%lf\n"
s);
fprintf(wf,"
题目六二维数组周边元素2
求出二维数组周边元素之和,作为函数值返回。
二维数组中的值在主函数中赋予。
例如,若二维数组中的值为:
1 3 5 7 9
2 9 9 9 4
6 9 9 9 8
1 3 5 7 0
则函数值为61。
intfun(inta[M][N])
inti,j,sum=0;
if(i==0||i==M-1||j==0||j==N-1)/*只要下标中有一个为0或M-1或N-1,则它一定是周边元素*/
sum=sum+a[i][j];
/*将周边元素相加*/
returnsum;
intaa[M][N]={{1,3,5,7,9},{2,9,9,9,4},{6,9,9,9,8},{1,3,5,7,0}};
inti,j,y;
printf("
Theoriginaldatais:
{for(j=0;
%6d"
aa[i][j]);
y=fun(aa);
\nThesun:
%d\n"
y);
%d"
题目七二维数组转一维数组1
3.请编写函数fun,该函数的功能是:
将M行N列的二维数组中的数据,按列的顺序依次放到一维数组中。
一维数组中数据的个数存放在形参n所指的存储单元中。
例如,若二维数组中的数据为
33333333
44444444
55555555
则一维数组中的内容应是:
334455334455334455334455
voidfun(int(*s)[10],int*b,int*n,intmm,intnn)
nn;
j++)/*将二维数组中的数据按列的顺序依次放入一维数组中*/
mm;
b[*n]=*(*(s+i)+j);
*n=*n+1;
/*通过指针返回元素个数*/
intw[10][10]={{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j;
inta[100]={0},n=0;
Thematrix:
3;
%3d"
w[i][j]);
fun(w,a,&
n,3,4);
TheAarray:
n;
i++)
{printf("
a[i]);
%d"
题目七二维数组转一维数组2
3.请编写函数fun,该函数的功能是:
将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。
WWWW
SSSS
HHHH
则字符串中的内容应是:
WSHWSHWSHWSH。
#defineM3
#defineN4
voidfun(char(*s)[N],char*b)
i++)/*按列的顺序依次放到一个字符串中*/
b[k++]=s[j][i];
b[k]='
\0'
;
chara[100],w[M][N]={{'
W'
'
},{'
S'
H'
}};
%3c"
fun(w,a);
TheAstring:
puts(a);
%s"
a);
题目七二维数组转一维数组3
1.请编一个函数voidfun(inttt[M][N],intpp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指的一维数组中。
二维数组中的数已在主函数中给出。
voidfun(inttt[M][N],intpp[N])
inti,j,max;
for(j=0;
max=tt[0][j];
/*假设各列中的第一个元素最大*/
if(tt[i][j]>
max)/*如果各列中的元素比最大值大,则将这个更大的元素看作当前该列中最大元素*/
max=tt[i][j];
pp[j]=max;
/*将各列的最大值依次放入pp数组中*/
voidNONO();
intt[M][N]={{68,32,54,12},{14,24,88,58},{42,22,44,56}};
intp[N],i,j,k;
printf("
\n"
);
for(i=0;
i++){
for(j=0;
j++)
%6d"
t[i][j]);
fun(t,p);
printf("
\nTheresultis:
for(k=0;
k<
N;
k++)printf("
%4d"
p[k]);
NONO();
voidNONO()
{/*请在此函数内打开文件,输入测试数据,调用fun函数,
输出数据,关闭文件。
inti,j,k,m,t[M][N],p[N];
FILE*rf,*wf;
rf=fopen("
r"
for(m=0;
m<
10;
m++){
fscanf(rf,"
&
t[i][j]);
fun(t,p);
k++)fprintf(wf,"
p[k]);
fclose(rf);
题目七二维数组转一维数组4
3.请编写函数fun,该函数的功能是:
将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中,一维数组中数据的个数存放在形参n所指的存储单元中。
例如,若二维数组中的数据为:
33 33 33 33
44 44 4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国计算机 二级 语言程序设计