当前位置:首页 > 上机练习-C程序设计(附参考答案)精简版
上机练习 C程序设计及参考答案
int JSValue(int t)
{ /* 考生在这里添加代码 */ int x1,x2,x3; x1=x2=1;x3=x1+x2; while( x3<=t){x1=x2;x2=x3; x3=x1+x2;} return x3; } void main() {
FILE *p;
p=fopen(\
fprintf(p,\ fclose(p); }
032.在正整数中找出一个最小的,被3,5,7,9整除的余数为1,3,5,7的数,将该数以“%d ”的格式写入考生文件夹中的paper. 子文件夹下的新建文件Design2.dat
#include
{/* 考生在这里添加代码*/ int n,t1,t2,t3,t4; FILE *p; p=fopen(“design.dat”,”w+”); for(n=10;;n++) { t1=n%3==1; t2=n%5==3; t3=n%7==5; t4=n%9==7; if(t1&&t2&&t3&&t4) break;} fprintf(p,”%d”,n); fclose(p); }
036.设计编写并运行程序,完成以下功能:
寻找并输出11至999之间的数m,它满足m、m*m、m*m*m均为回文数。 说明:所谓回文数是指各位数字左右对称,例如121、676、94249等。满足上诉条件的数如m=11,m^2=121,m^3=1331皆为回文数。
请编制函数int JSValue(long m)实现此功能,如果是回文数,则函数返回1,反之则返回0。
最后把结果写入到考生文件夹中Paper子文件夹下的新建文件Design2.dat
#include
共 15 页 给07电信 1、2班上机练习 第 9 页
上机练习 C程序设计及参考答案
#include
{ /* 考生在这里添加代码 */ long n,y=0; n=m; while(n!=0) { y=y*10+n; n=n/10; } if(y = = m) return 1; return 0 ; /*注:n 是 m 的倒置*/ } void main() {
FILE *p;long m;
p=fopen(\ for(m=11;m<1000;m++) {
if(JSValue(m)&&JSValue(m*m)&&JSValue(m*m*m)) fprintf(p,\ }
fclose(p); }
037.设计编写并运行程序,完成以下功能:
计算500~800区间内素数的个数cnt和素数和sum。请编写函数JSValue()实现程序的要求。
最后把cnt和sum的值写入到考生文件夹中paper子文件夹下是新建文件Designl.dat.
#include
int i,j,half;
/* 考生在这里添加代码 */ for(i=501;i<800;i=i+2) { half=i/2; for(j=2;j<=half;j++) if (i%j = = 0) break; if ( j = = half+1 ) { cnt + + ; sum+=i; } } void main() {
FILE *p;
p=fopen(\ JSValue();
fprintf(p,\ fclose(p);
共 15 页 给07电信 1、2班上机练习 第 10 页
上机练习 C程序设计及参考答案
}
038..设计编写并运行程序,完成以下功能:
有数列:2/1,3/2,5/3,8/5,13/8,21/13,??求出数列的前40项的和。又将
计算结果以格式“%.6f”写入到考生文件夹中Paper子文件下的新建文件Design2.dat #include
FILE *p; int i;
float f1=1.0,f2=2.0,t1=2.0,t2=3.0,s; float f,t;
s=t1/f1+t2/f2;
/* 考生在这里添加代码 */ for(i=1;i<=19;i++) {f1=f1+f2;f2=f1+f2;t1=f2;t2=f1+f2; s=t1/f1+t2/f2;} p=fopen(\ fprintf(p,\ fclose(p); }
039.程序设计:累加a字符串中的各个字符的ASCII码值,然后将累加和以格式“d%”写入到考生文件中 #include
{ FILE *p; int s=0,i=0;
char *a=\ /* 考生在这里添加代码*/ p=fopen(design.dat”,”w+”); While(a[i]!=”\\0”) {s+=a[i];i++;} fprintf(p,”%d”,s); fclose(p); } 040.设计:数列第一项为81,此后各项均为它前一项的正平方根,统计该数列前30项之和,并以格式“%.3f”写入到考生文件夹中paper子文件夹下的新建文件design2.dat #include
上机练习 C程序设计及参考答案
/* 考生在这里添加代码*/ p=fopen(“design2.dat”,”w+’); for(i=0;i<30;i++) {s+=a; a=sqrt(a); } fprintf(p,”%.3f”,s); fclose(p); } //运行结果:121.336 题2
请务必仔细阅读下列信息,单击“回答”按钮,进行c语言设计[1]考试。
在考生文件夹的paper子文件夹下已有design1.c文件。
041. 设计编写并运行程序,完成以下功能:
数组元素x[i]、y[i]表示平面上某点坐标,统计10个点中处在圆(方程为:(x-1)*(x-1)+(y+0.5)*(y+0.5)=25)内的点数k,并将变量k的值以格式“%d”写入到考生文件夹中paper子文件夹下的新建文件design1.dat
#include
{ FILE *p; int i,k=0;
float x[]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65}; float y[]={-6,4.3,4.5,3.67,2.42,2.54,5.6,-0.97,4.65,-3.33}; /* 考生在这里添加代码 */ for(i=0;i<10;i++) if (sqrt((x[i]-1)*(x[i]-1)+(y[i]+0.5)*(y[i]+0.5)<=5)) ) k++; p=fopen(\ fprintf(p,\ fclose(p); }
042.在数组x的十个数中求平均值v,找出与v 相差最小的数组元素并将其以格式“%.5f”写入到考生文件夹中 paper子文件夹下的新建文件夹desigh2.dat #include
void main()
{ FILE *p; int i,k=0;
float x[10]={7.23,-1.5,5.24,2.1,-12.45,6.3,-5,3.2,-0.7,9.81},d,v=0; for(i=0;i<10;i++) v+=x[i]; v=v/10; d=fabs(x[0]-v); /* 考生在这里添加代码 */
共 15 页 给07电信 1、2班上机练习 第 12 页
共分享92篇相关文档