全国最大在线学习互动平台

  各地分站:上海  北京  天津  重庆  广东  浙江  江苏  山东  湖南  更多 设为首页 | 收藏本站 | 用户注册 | 查看全部考试

在线模考

学习博客

返回首页

 
输入关键字:
热门推荐: 考试全程通软件  网上课程 二手复习资料  打折图书
     
 

《高级语言程序设计》北大上机试题(九)

 
 

07-10-16 23:15:31    学人教育社区    加为收藏加入收藏夹    推荐给好友发送给好友

 
 
 
 

C语言上机试题:9

1.题目:编一个C程序,它能读入一串浮点数(以-9999.0为结束标记,-9999.0不算在内,相邻的两个数用空格隔开),计算并输出这些数的平均值以及这些数中大于、小于平均值的数的个数。(注:可执行文件名为e9_1.exe)

程序设计:
#include "math.h"
main()
{float a[100],ave=0.0;
int ma=0,mi=0,qe=0,i=-1,n;
printf("Please enter float number:\n");
do {i++;
scanf("%f",%26amp;a[i]);
}
while (fabs(a[i]+9999.0)%26gt;1e-4);
n=i;
for (i=0;i%26lt;n;i++)
ave+=a[i];
ave/=n;
for (i=0;i%26lt;n;i++)
if (a[i]%26lt;ave) mi++;
else if (a[i]%26gt;ave) ma++;
else qe++;
printf("%26lt; %d,= %d,%26gt; %d\n",mi,qe,ma);
}

2.题目:编一个C程序,它能读入文件f1.c和f2.c中的所有整数,并把这些数按从小到大的次序写到文件f3.c中,文件中的相邻两个整数都用空格或换行符隔开。(注:可执行文件名为e9_2.exe)

程序设计:
#include "stdio.h"
main()
{FILE *fp1,*fp2,*fp3;
int a[100],n,i,j,k,x;
if ((fp1=fopen("f1.c","wb"))==NULL)
{printf("f1.c can not open!\n");
exit(0);
}
x=9999;
while (x!=-9999)
{scanf("%d",%26amp;x);
if (x!=-9999) fwrite(%26amp;x,sizeof(int),1,fp1);
}
fclose(fp1);
if ((fp2=fopen("f2.c","wb"))==NULL)
{printf("f2.c can not open!\n");
exit(0);
}
x=9999;
while (x!=-9999)
{scanf("%d",%26amp;x);
if (x!=-9999) fwrite(%26amp;x,sizeof(int),1,fp2);
}
fclose(fp2);
if ((fp1=fopen("f1.c","rb"))==NULL)
{printf("f1.c can not open!\n");
exit(0);
}
if ((fp2=fopen("f2.c","rb"))==NULL)
{printf("f2.c can not open!\n");
exit(0);
}
if ((fp3=fopen("f3.c","wb"))==NULL)
{printf("f3.c can not open!\n");
exit(0);
}
i=-1;
while (!feof(fp1))
fread(%26amp;a[++i],sizeof(int),1,fp1);
fclose(fp1);
i--;
rewind(fp2);
while (!feof(fp2))
fread(%26amp;a[++i],sizeof(int),1,fp2);
fclose(fp2);
n=i;
for (k=1;k%26lt;n;k++)
for (j=n-1,i=0;i%26lt;n-k;i++,j--)
if (a[j]%26lt;a[j-1])
{x=a[j];a[j]=a[j-1];a[j-1]=x;}
fwrite(a,sizeof(int),n,fp3);
fclose(fp3);
if ((fp3=fopen("f3.c","rb"))==NULL)
{printf("f3.c can not open!\n");
exit(0);
}
while (!feof(fp3))
{fread(%26amp;x,sizeof(int),1,fp3);
printf("%d ",x);
}
printf("\n");
}

3.题目:编一C程序,它能读入一正整数n(n%26lt;10),再输出如下图形:



共 n 行.。(注:可执行文件名为e9_3.exe)

程序设计:
main()
{int n,i,k,j;
printf("Please enter n(%26lt;10)=");
scanf("%d",%26amp;n);
printf("\n");
for (i=0;i%26lt;n;i++)
{printf("\n");
for (k=0;k%26lt;i;k++)
printf("%c",' ');
for (j=1;j%26lt;n+1;j++)
printf("%d",j);
}
printf("\n");
}

 
 

 
 

上一篇:     下一篇:

 
     
 
[考试软件推荐] 更多软件
 

监理工程师考试全程通  
咨询工程师考试全程通
报关员考试全程通
  证券从业资格考试全程通  
  注册会计师考试全程通  
  国家司法考试全程通  
  质量专业资格考试全程通  
  会计中级职称考试全程通  
  报检员资格考试全程通  
  执业医师考试全程通  
[网上课程推荐] 更多课程
 

英语四级考试网上辅导  
英语六级考试网上辅导
英语口语网上课程
  公务员考试权威网上辅导课程  
  国家司法考试网上辅导课程  
  企业法律顾问网上辅导课程  
  证券从业资格考试网上辅导课程  
  执业药师考试网上辅导课程  
  执业医师考试网上辅导课程  
  卫生资格考试网上辅导课程  
  注册会计师考试网上辅导课程  
  注册税务师考试网上辅导课程  
  资产评估师考试网上辅导课程  
  监理工程师考试网上辅导课程  
  一级建造师考试网上辅导课程  
  造价工程师考试网上辅导课程  
  咨询工程师考试网上辅导课程  
  安全工程师考试网上辅导课程  
  房地产经纪人考试网上辅导课程  
  房地产估价师考试网上辅导课程  
  城市规划师考试网上辅导课程  
[相关新闻]

 

关于我们服务内容付款方式 订购方式配送方式服务保证联系我们广告投放合作推广网站声明友情链接问题咨询
Copyright @ 2007-2010 上海天柏信息科技有限公司 All Rights Reserved.
地址:上海市浦东新区浙桥路289号建银大厦A座2107室 邮编:200126
联系电话:021-50252164,51330678 传真:021-50252164-804
沪ICP备08003022号