计算机C语言上机Word文档格式.docx
- 文档编号:18399086
- 上传时间:2022-12-16
- 格式:DOCX
- 页数:55
- 大小:34.78KB
计算机C语言上机Word文档格式.docx
《计算机C语言上机Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机C语言上机Word文档格式.docx(55页珍藏版)》请在冰豆网上搜索。
n);
for(i=1;
i<
=n;
i++){
/*******2******/
t=t*10+i;
//i-1
s=s+t;
}
s=s*a;
%ld\n"
2、程序填空题
程序功能:
调用函数f计算代数多项式1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x当x=1.7时的值。
floatf(float,float*,int);
voidmain()
{floatb[5]={1.1,2.2,3.3,4.4,5.5};
printf(“%f\n”,f(1.7,b,5));
floatf
(1)//floatf(floatx,floata[],intn)
{floaty=a[0],t=1;
inti;
for(i=1;
n;
i++){t=t*x;
y=y+a[i]*t;
2;
//returny
3、程序设计题
设计程序:
计算多项式a0+a1*sin(x)+a2*sin(x*x)+a3*sin(x*x*x)+……的值,并将其值以格式"
%.6f"
写入到考生目录中Paper子目录下的新建文件design.dat中。
#include<
{
FILE*p;
floatx=2.345,t=1.0,y=0.0;
floata[10]={1.2,-1.4,-4.0,1.1,2.1,-1.1,3.0,-5.3,6.5,-0.9};
//*考生在这里添加代码
p=fopen(“design.dat”,”w”);
y=a[0];
10;
i++)
t=t*x;
y=y+a[i]*sin(t);
fprintf(p,”%.6f”,y);
fclose(p);
计程序:
计算多项式a0-a1*x+a2*x*x/2!
-a3*x*x*x/3!
+...的值,并将其以格式"
%f"
写到考生目录中Paper子目录下的新建文件design.dat中。
{FILE*p;
floatx=1.279,t,y;
floata[10]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65};
//考生在这里添加代码
t=1;
{t=-t*x/i;
fprintf(p,"
y);
试题三
计算表达式1+2!
+3!
+...+12!
的值,并将计算结果以格式"
%ld"
写入到考生目录中Paper子目录下的新建文件design.dat中
longs=1,k=1;
//考生在这里添加代码
p=fopen("
design.dat"
"
w"
);
for(i=2;
=12;
{k=i*k;
s=s+k;
fprintf(p,"
fclose(p);
试题四
计算多项式a0+a1*x+a2*x*x+a3*x*x*x+...的值,并将其值以格式"
floatx=1.279,t=1,y=0;
p=fopen("
for(i=0;
{y=y+t*a[i];
t=t*x;
试题五
计算2的平方根、3的平方根、...、10的的平方根之和,要求计算结果具有小数点后10位有效位数,并以格式"
%.10f\n"
floats=0;
=10;
s=s+sqrt(i);
%.10f"
试题六
数列第1项为81,此后各项均为它前1项的正平方根,统计该数列前30项之和,并以格式"
%.3f"
floats=0,a=81,i;
=30;
{s=s+a;
a=sqrt(a);
试题七
在数组a的10个数中求平均值v,将大于等于v的数组元素进行求和,并将结果以格式"
%.5f"
voidmain()
{FILE*p;
floata[10]={7.23,1.5,5.24,2.1,2.45,6.3,5,3.2,0.7,9.81},sum,v=0;
for(i=0;
v=v+a[i]/10;
sum=0;
if(a[i]>
v)
sum=sum+a[i];
sum);
试题八
利用公式π/4≈1-1/3+1/5-1/7+……公式计算π的近似值,直到某一项的绝对值小于1e-6为止。
(π/4的结果不包含此项)将结果以格式"
#include<
FILE*fp;
floatn=1,t=1,pi=0;
fp=fopen("
while(1.0/t>
=1e-6)
{pi=pi+n*1.0/t;
t=t+2;
n=-n;
pi=pi*4;
fprintf(fp,"
pi);
fclose(fp);
试题九
计算数列1,-1/3!
,1/5!
,-1/7!
的和至某项的绝对值小于1e-5为止(该项不累加),将结果以格式"
写入到考生目录中Paper子目录下的新建文件design1.dat中。
floats=1,t=1,i=3;
d:
\\design1.txt"
t=-t*(i-1)*i;
while(fabs(1/t)>
=1e-5)
{s+=1/t;
i=i+2;
%.6"
二、最大公约数、最小公倍数
输入m、n(要求输入数均大于0,且m>
=n),输出它们的最小公倍数。
{intm,n,k;
/********1*********/
while(scanf("
m,&
n),m<
0&
&
n<
0);
//m<
0-!
(m>
0&
n>
m>
=n)
for(k=m;
k%n!
=0;
)
/********2********/
k=k+n;
//改为:
k=k+m
%d\n"
k);
输入m、n(要求输入数均大于0),输出它们的最大公约数。
while(scanf("
n),_______1______);
//!
(n>
0)
for(____2____;
n%k!
=0||m%k!
k--);
//k=m或k=n
三、排序算法
用选择法对10个整数按升序排序。
#defineN10
inti,j,min,temp;
inta[N]={5,4,3,2,1,9,8,7,6,0};
\nThearrayis:
\n"
/*输出数组元素*/
for(i=0;
N;
%5d"
a[i]);
N-1;
i++)/*排序操作*/
{
min=i;
for(j=i+1;
j<
j++)
/******1******/
if(a[min]<
=a[j])min=j;
//<
=---->
/******2******/
temp=a[min];
a[min]=a[j];
a[j]=temp;
/*数据交换*/
}//j--i
\nThesortednumbers:
\n"
/*输出排序结果*/
2、程序设计题
用冒泡法对10个整数按升序排序。
//
for(i=0;
for(j=0;
N-1-i;
if(a[j]>
a[j+1]){
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}/*数据交换*/
}
四、数组
1、程序填空题
输入数组x[7],调用函数f,去除数组中的负数,输出结果为:
1346
voidf(int*a,int*m)
{inti,j;
*m;
if(a[i]<
0){
for(j=i--;
j<
*m-1;
j++)a[j]=a[j+1];
_____1_____;
//(*m)--
{inti,n=7,x[7]={1,-2,3,4,-5,6,-7};
_______2_______;
//f(x,&
n)
i++)printf("
x[i]);
函数f将数组循环左移k个元素,数组x[7]调用函数f后的输出结果为:
4567123
voidf(int*a,intn,intk)
{inti,j,t;
k;
i++){
___1___;
//t=a[0]
for(_______2________)a[j-1]=a[j];
//j=1;
j++
a[n-1]=t;
{inti,x[7]={1,2,3,4,5,6,7};
f(x,7,3);
7;
调用函数f,求二维数组a中全体元素之和。
floatf(_______1_______)//float*x[],intm,intn
{floaty=0;
inti,j;
m;
i++)for(j=0;
j++)y=y+*(*(x+i)+j);
returny;
{floata[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}},*b[3];
3;
i++)b[i]=___2___;
//*(a+i)
%.2f\n"
f(b,3,4));
求出数组a中相邻两个元素的和,并将这些和存放在数组a中,按每一行3个元素的形式输出。
(例如:
b[1]=a[0]+a[1],b[2]=a[1]+a[2]……,b[9]=a[8]+a[9])
inta[10],b[10],i;
\nInput10numbers:
"
i<
i++)/*数组输入*/
%d"
&
a[i]);
for(i=1;
i++)
b[i]=_a[i-1]+a[i]_;
/*计算b数组中的元素*/
%3d"
b[i]);
if(_i%3==0_)printf("
/*每行打印3个数据*/
将数组a的每1行均除以该行上的主对角元素(第1行同除以a[0][0],第2行同除以a[1][1],...),然后将a数组写入到考生目录中Paper子目录下的新建文件design.dat中新建的文件design.dat中。
{floata[3][3]={{1.3,2.7,3.6},{2,3,4.7},{3,4,1.27}};
/****以下要求考生写的代码****/
floattemp;
p=fopen(“design.dat”,”w”);
i++)
{temp=a[i][i[;
for(j=0;
j++)
%5.1f"
a[i][j]/temp);
fprintf(p,"
}
将数组a的每1行均除以该行上绝对值最大的元素,然后将a数组写入到考生目录中Paper子目录下的新建文件design.dat中。
floatx;
x=a[i][0];
for(j=0;
j++)
if(fabs(x)<
fabs(a[i][j]))
x=a[i][j];
a[i][j]=a[i][j]/x;
j++)fprintf(p,"
%10.6f"
a[i][j]);
在整数数组a中找出偶数放到数b中,对数组b按从小到大的顺序排序后发格式“%3d”每行3个数写入考生文件夹中paper子文件夹下的新建文件design1.dat。
inti,j,temp,n=0;
inta[10]={7,6,20,3,14,88,53,62,10,29},b[10];
//考生在这里添加代码
design1"
if(a[i]%2==0)b[n++]=a[i];
n-1;
n-1-i;
if(b[j]>
b[j+1])
{temp=b[j];
b[j]=b[j+1];
b[j+1]=temp;
if(i%3==0)fprintf(p,"
%3d\n"
b[i-1]);
elsefprintf(p,"
五、求整数n的各位数字及各数字之和
运行时输入整数n,输出n各位数字之和(如n=1308则输出12,n=-3204则输出9)。
{intn,s=0;
n=fabs(n);
/********1*******/
while(n>
1){//n或n>
0或n!
=0
s=s+n%10;
/********2******/
n=n%10;
//%--/
求输入的整数各位数字之和,如输入234则输出9,输入-312则输出6。
intn,s=0;
______1______//n=fabs(n);
while(n!
=0){
______2______//s=s+n%10
n=n/10;
输入1个整数后,输出该数的位数(若输入3214则输出4,输入-23156
则输出5)。
{intn,k=0;
while(_____1_____){//n或n!
k++;
_____2_____;
//n=n/10
调用函数f,将1个整数首尾倒置,若程序输入12345,则输出54321;
若程序输入-34567,则输出-76543。
longf(longn)
{longm,y=0;
m=fabs(n);
while(m!
=0){
y=y*10+m%10;
____1____//m=m/10;
if(n>
=0)returny;
else_____2_____//return-y;
%ld\t"
f(12345));
f(-34567));
选出5000以下符合条件的自然数。
条件是:
千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的10倍。
计算并输出这些四位自然数的个数cnt及这些数字的和sum到考生目录中Paper子目录下的新建文件design.dat中。
#
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 语言 上机