我爱黑客网首页 设为首页
加入收藏
联系我们
 首 页  技术文章 下载中心 站长学院 交流论坛
 软件:
 文章:        教程:
 推荐: 我爱黑客网论坛
 
 
 
 
   
黑软: Q Q 软件 木马间谍 探嗅监听 溢出攻击 加密解密 漏洞扫描 脚本注入 远程控制 综合利用 聊天工具  
 
技术文章: 爱黑新闻 | 黑客攻防 | 网络技术 | 程序设计 | 系统操作 | 本站动态 | 业界动态 | 安全公告 | 病毒公告 | 八卦黑客
 
 
您当前的位置:我爱黑客 -> 程序设计 -> C语言 -> C等级考试 -> 文章内容  
栏目导航
· 入门基础 · c编程实例
· C数据结构 · C等级考试
热门文章
· 2003全国等级考二级C上..
· 计算机二级C语言过关经..
· 二级(C语言程序设计)..
· 二级C语言实例解答
· 二级考试大纲(C语言)
· 2003全国等级考三级C语..
相关文章

· Mac版Office 2004升..
· 中国黑客联盟一位管..
· NT/2000下不用驱动的..
· C++ Builder2006控件..
· 对VS2005 C++编译器..
· 2003全国等级考二级..
· QQ2004 sp1加密文件..
· [图文] 纯字符模仿Lo..
· 金山毒霸反病毒周报..
· 惨不忍睹 分析2000..
查看更多与2003全国等级考三级C语言上机试题(附参考答案)相关内容

2003全国等级考三级C语言上机试题(附参考答案)
作者:幽火  来源:www.5ihack.com  发布时间:2007-1-8 17:05:08  发布人:ghostfire

减小字体 增大字体

  上机编程题:

  1、已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把一个四位数的千位数字上的值减去百位数字上的值再减去十位数字上的值最后减去个位数字上的值,如果得出的值大于等于零且原四位数是奇数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat()把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

  注意:部分源程序存在文件prog1.c文件中。

  程序中已定义数组:a[200],b[200],已定义变量:cnt

  请勿改动数据文件IN.DAT中的任何数据、主函数main()、读函数readDat()和写函数writeDat()的内容。

#include <stdio.h>
#define MAX 200
int a[MAX], b[MAX], cnt = 0 ;
void jsVal()
{
}
void readDat()
{
int i ;
FILE *fp ;
fp = fopen("in.dat", "r") ;
for(i = 0 ; i < MAX ; i++) fscanf(fp, "%d", &a[i]) ;
fclose(fp) ;
}   void main()
{
int i ;
readDat() ;
jsVal() ;
printf("满足条件的数=%d
", cnt) ;
for(i = 0 ; i < cnt ; i++) printf("%d ", b[i]) ;
printf("
") ;
writeDat() ;
}
  writeDat()
{
FILE *fp ;
int i ;
fp = fopen("out.dat", "w") ;
fprintf(fp, "%d
", cnt) ;
for(i = 0 ; i < cnt ; i++) fprintf(fp, "%d
", b[i]) ;
fclose(fp) ;
}

  参考答案:

void jsVal()
{
int i,j,k;
int i1,i2,i3;
cnt=0;
for(i=0;i<MAX;i++)
{
if(a[i]%2) /*是奇数才检查*/
{
i1=a[i]/1000;
i2=a[i]/100-i1*10;
i3=a[i]/10-i1*100-i2*10;
if(i1-i2-i3>=a[i]%10)
{
b[cnt++]=a[i]; /* 放在最后,cnt递增 */
for(j=0;j<cnt-1;j++)
{
if(b[j]>a[i])
{
for(k=cnt-1;k>j;k--) /* 如果找到比a[i]还大的数,开始冒泡 */
b[k]=b[k-1];
b[j]=a[i];
break;
}
}
}
}
}
return;
}

  2、已知数据文件IN.DAT中存有200个四位数,并已调用读函数readDat()把这些数存入数组a中,请考生编制一函数jsVal(),其功能是:把一个四位数的个位数字上的值减去千位数字上的值再减去百位数字上的值最后减去十位数字上的值,如果得出的值大于等于零且原四位数是偶数,则统计出满足此条件的个数cnt并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat( )把结果cnt以及数组b中符合条件的四位数输出到OUT.DAT文件中。

查看更多与2003全国等级考三级C语言上机试题(附参考答案)相关内容

[ ] [返回上一页] [打 印] [收 藏]
上一篇文章:
下一篇文章:
      2003全国等级考二级C上机试题(附参考答案)       二级考试大纲(C语言)
∷相关文章评论∷   (评论内容只代表网友观点,与本站立场无关!) [发表评论]
 
 
 
 
晋ICP备05008232   维护网络安全、传播安全技术才是我们的目标! 
 
关于本站 - 网站帮助 - - 下载声明 - 友情连接 -网站地图