计算机C语言习题(2级考试必备)(DOC 7页).doc

上传人(卖家):2023DOC 文档编号:5854468 上传时间:2023-05-12 格式:DOC 页数:8 大小:24.50KB
下载 相关 举报
计算机C语言习题(2级考试必备)(DOC 7页).doc_第1页
第1页 / 共8页
计算机C语言习题(2级考试必备)(DOC 7页).doc_第2页
第2页 / 共8页
计算机C语言习题(2级考试必备)(DOC 7页).doc_第3页
第3页 / 共8页
计算机C语言习题(2级考试必备)(DOC 7页).doc_第4页
第4页 / 共8页
计算机C语言习题(2级考试必备)(DOC 7页).doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、专题一 判断一年是否为润年main( ) int year,leap; scanf(%d,&year); if(year%4=0&year%100!=0) |(year%400=0)leap=1; else leap=0;if (leap)printf(%dis not a leap yearn,year); else printf(%d is a leap yearn,year); 专题二 判断M是否为素数求间的全部素数。 #include main( ) int m,k,i,n=0; for(m=101;m=200;m=m+2) k=sqrt(m); for(i=2;i=k+1)print

2、f(%d,m);n=n+1; if(n%10=0)printf(n); printf(n); 专题三 矩阵运算 专题四 递归算法求n!float fac(int n) float f; if(n0) printf(n0,dataerror!); else if(n=0)|(n=1) f=1; else f=fac(n-1)*n; return(f); main( ) int n;float y; printf(input a integer number:); scanf(%d,&n); y=fac(n); printf(%d!=%15.0f,n,y); 专题五 排序法#include int

3、 main()int a5=5, 10, -7, 3, 7 , i, t, j;choose_sort(a);for(i=0;i=4;i+)printf(%dn,ai);return 0;void choose_sort(int a)int i,j,t;for(i=0;i4;i+)for(j=i+1; jaj)t=aj;aj=ai;aj=t;专题七 指针处理链表 建立一个简单链表,它由3个学生数据的结点组成,输出各结点中的数据。#define NULL 0 struct student long num; float score; struct student *next; ; main( )

4、 struct student a,b,c,*head,*p; a.num=99101;a.score=89.5; b.num=99103;b.score=90; c.num=99107;c.score=85; head=&a; a.next=&b;b.next=&c; c.next=NULL; p=head; do printf(%ld%5.1fn,p-num,p-score); p=p-next; while(p!=NULL); 专题八 文件操作真题解析例1: 读程序,回答问题 将下列程序编译、连接后生成一个名为 2_3.exe的可执行文件。假设盘上有两个文本文件file1.dat和fil

5、e2.dat,file1.dat的内容为123abc,file2.dat的内容为xyzABC987。(1)若在DOS提示符下键入 2_3 file1.dat file2.dat 则程序的运行结果为:int main(int argc,char *argv)FILE *fp;int fun(FILE *);int num,i=1;while(-argc0)if(fp=fopen(argvi+,r)=NULL)printf(Cannot open file!n);exit(0);elsenum=fun(fp);fclose(fp);printf(num=%dn,num);int fun(FILE

6、*fp)static int count=0;char c;c=fgetc(fp);while(c!=EOF)if(c=0 & c=9)count+;c=fgetc(fp);return count;解:num=6若将fun函数中对count的定义static int count=0,改为int count=0,其余条件不变,若在DOS提示符下键入 2_3 file1.dat file2.dat 则程序的运行结果为:#include int fun(FILE *fp)/*static int count=0;*/ int count=0;char c;c=fgetc(fp);while(c!=

7、EOF)if(c=0 & c=9)count+;c=fgetc(fp);return count;解:num=3若将fun函数中对count的定义static int count=0,改为int count,其余条件不变,若在DOS提示符下键入 2_3 file1.dat file2.dat 则程序的运行结果为:#include int fun(FILE *fp)/*static int count=0;*/ int count;char c;c=fgetc(fp);while(c!=EOF)if(c=0 & c=9)count+;c=fgetc(fp);return count;解:num=

8、随机值例2:程序填空题 将三个职工的数据(编号,姓名,年龄)从键盘输入,存放到一个新建的二进制文件employee中去。先看两个函数 fread(buffer, size, count, fp); fwrite(buffer, size, count, fp); 以上两个函数常用于二进制文件的访问 程序如下:#include int main()FILE *fp;struct employeelong code;char name20;int age;em;int k;if(fp=fopen(employee,)=NULL)printf(errorn);return(0);for(k=0;k3

9、;k+)scanf(%ld%s%d,&em.code,em.name,&em.age);fwrite( ,sizeof(struct employee),fp);fclose(fp);return 1;解: wb &em 1例3:以下程序运行后,文件test中的内容为#include #include void fun(char *fname, char *st)FILE *fp;int i;fp=fopen(fname,w);for(i=0;istrlen(st);i+)fputc(sti,fp);fclose(fp);void main()fun(test, world);fun(test

10、, hello);world (B) worldhello (C)helloworld (D) hello解:hello例4:程序填空题 文件stu.txt中存放了一个学生各门课程的考试分数,数据之间以逗号分割。下面程序将文件中的所有分数取出,计算平均分,显示在屏幕上,还要把这个平均分数按原文件的数据格式记录在原文件中。例如文件stu.txt中存放的为“60.5, 81.1, 93.5,90.5”,则程序运行后文件stu.txt中为60.5, 81.1, 93.5,90.5, 78.363339#include int main()int n=0;float x=0.0,y;FILE *fp;fp= ;dofscanf();if(feof(fp)break;x+=y;n+;while(1); x=x/n;printf(average=%f,x);fclose(fp);return 0;解: fopen(stu.txt,r+) fp,%f,&y fprintf(fp,%f,x);8

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 待归类文档
版权提示 | 免责声明

1,本文(计算机C语言习题(2级考试必备)(DOC 7页).doc)为本站会员(2023DOC)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|