二级C语言上机题库--100题.docx
《二级C语言上机题库--100题.docx》由会员分享,可在线阅读,更多相关《二级C语言上机题库--100题.docx(173页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、二级C语言上机试题汇编 t=*n %_1_;/*伯und*/*if(t%2!= _2_)*第01套:(x=x+t*i; i=i*10;)给定程序MOD11.C中函数fun给定程序中,函数fun的功能是:*n =*n/10;的功能是:计算n!。将形参n所指变量中,各位上为)例如,给n输入5,则输出偶数的数去120.000000o除,剩余的数按原来从高位到低*n=_3_;请改正程序中的错误,使程序能位的顺序组成一个新的数,并通)输出正确的结果。过形参指针n传回main()注意:不要改动main函数,不所指变量。(unsigned long n=l;得增行或删行,也不得更改程序例如,输入一个数:27
2、638496,while(n99999999lln0)的结构!新的数:为739。printf( Please给定源程序:请在程序的下划线处填入1E确input(0n 100000000):);#include 的内容并把下划线删除,使程序scanf(H%ld&n); double fun (int n )得出正确的结fun(&n);果。printf(MnThe result is: %ldnn);注意:源程序存放在考生文件夹)下的BLANK1.C中。解题思路: double result = 1.0 ;不得增行或删行,也不得更改程第一处:t是通过取模的方式来/*砧und*序的结构!得到*n的个
3、位数字,所以应填:*/给定源程序:10oifn = = O#include 第二处:判断是否是奇数,所以return 1.0;void fiin(unsigned long *n)应填:0owhile( n 1 & n 170 ) unsigned long x=0, i; int t;第三处:最后通形参n来返回新/*他口 nd* *i=l;数X,所以应填:Xo*while(*n)/*foun(j */*/fiin(n);*result *= n)*return result;解题思路:请编写一个函数fun,它的功能第一处:条件语句书写格式错是:将一个数字字符串转换为一main ()误,应改为
4、:if(n=O)。个整数(不得 int n ;第二处:语句后缺少分号。调用C语言提供的将字符串转printf(HInput N:H);换为整数的函数)。例如,若输scanf(%d, &n);入字符串-1234,则printf(Hnn%d! =%lfnn* n,函数把它转换为整数值-1234。函数firn中给出的语句仅供参/*本函数用于打开文件,输入return x*t;考。数据,调用函数,输出数据,关)注意:部分源程序存在文件闭文件。*/main() /* 主函数*/PROG1.C文件中。FILE *fp, *wf; char s6;请勿改动主函数main和其它函int i;long n;数中
5、的任何内容,仅在函数funchar s20;printf(Enter a slring:n);的花括号中填long n ;gets(s);入你编写的若干语句。fp = fopen(,c:testin.dat,Mr);n = fun(s);给定源程序:wf=printf(ldn”,n);#include fopen(,c:testout.datH/,w);NONO ();#include for(i = 0 ; i 10 ; i+) )long fun ( char *p)fscanf(fp, M%sH, s);NONO()(n = fun(s);/*本函数用于打开文件,输入/*以下代码仅供参考
6、*/fprintf(wf, ,%ldn, n);数据,调用函数,输出数据,关inti, len,t; /*len 为串长,t 为正)闭文件。*/负标识*/fclose(fp);long x=0;fclose(wf);len=strlen(p);)FILE *fp, *wf;if(pO=-)解题思路:inti; t=-l; len; p+; 本题是将一个数字字符串转换char s20;else t=l;为一个整数。long n ;/*以下完成数字字符串转换为参考答案:fp = fopen(,c:testin.datr);一个数字*/#include wf=return x*t;#include
7、fopen(,c:testout.dat,wM);long fun ( char *p)for(i = 0 ; i 10 ; i+) main。/*主函数*/(fscanf(fp, M%s, s); char s6;/*以下代码仅供参考*/n = fun(s);long n;int i, len, t;/* len 为串长,t 为正fprintf(wf, %ldn n);printf(Enter a string:n);负标识*/)gets(s);long x=0;fclose(fp);n = fun(s);len=strlen(p);fclose(wf);printf(M%ldn,n);if
8、(pO=-) t=-l; len-; p+; )else t=l;注意:由于NONO()这个函数是NONO ();/*以下完成数字字符串转换为改卷人用的,与考生没有什么关一个数字*/系,故下面从第2套试题开始均NONO()while(*p) x = x*10-48+(*p+);省略NONO()putchar(_3_); ch = fgetc(fp); #include putcharCXn1);void fun(char *s)fclose(fp); int i,j;)for(i=OJ=O; si!=0; i+)main()if(si=0 & si=*9) char a10=Hello!”;
9、int/*於und*/第02套:b=12345;sU=si;给定程序中,函数fun的功能是double c= 98,76;/*於und*/将形参给定的字符串、整数、浮fun(a,b,c);s|j=O”;点数写到文本)文件中,再用字符方式从此文本main()文件中逐个读入并显示在终端 char item80;屏幕上.printf(HnEnter a string :请在程序的下划线处填入1E确M);gets(item);的内容并把下划线删除,使程序解题思路:printf(MnnThe string is :得出正确的结本题是考察先把给定的数据写V%sVn,item);果。入到文本文件中,再从该文
10、件读fiin(item);注意:源程序存放在考生文件夹出并显示在屏幕上。printf(nnThe string of changing下的BLANK 1.C中。第一处:定义文本文件类型变is : V%sn,item);不得增行或删行,也不得更改程量,所以应填:FILE *o)序的结构!第二处:判断文件是否结束,所解题思路:给定源程序:以应填:fp。第一处:耍求是取出原字符串中#include 第三处:显示读出的字符,所以所有数字字符组成一个新的字void fun(char *s, int a, double f)应填:cho符串,程序中是使用变量j(*来控制新字符串的位置,所以应/*found
11、*/*改为:sj+=si;._1_ fp;给定程序MODH.C中函数fun第二处:置新字符串的结束符,char ch;的功能是:依次取出字符串中所所以应改为:sUk、。;.fp = fopen(filel.txtH, Hw);有数字字符,形*fprintf(fp, H%s %d %fn, s, a, f);成新的字符串,并取代原字符*fclose(fp);串。请编写函数fun,函数的功能是:fp = fopen(filel.txf; V);请改正函数fun中指定部位的错将M行N列的二维数组中的字printf(nThe result :nnH);误,使它能得出正确的结果。符数据,按列的ch =
12、fgetc(fp);注意:不耍改动main函数,不得顺序依次放到一个字符串中。/*found*/增行或删行,也不得更改程序的例如,二维数组中的数据为:while (!feof(_2_) 结构!WWW W/*found*/给定源程序:SSSSHHHHprintf(The A string:nM);puts(a);出到文件中。函数fun的功能是则字符串中的内容应是:printf(nn);电写形参filename所WSHWSHWSHoNONO();指文件中最后一个学生的数据,注意:部分源程序在文件)即用新的学生数据覆盖该学生PROG1.C 中。原来的数据,其它学请勿改动主函数main和其它函解题思路
13、:生的数据不变。数中的任何内容,仅在函数fun本题是把二维数组中的字符数请在程序的下划线处填入正确的花括号中填入据按列存放到一个字符串中。的内容并把下划线删除,使程序你编写的若干语句。1.计算存放到一维数组中的位得出正确的结给定源程序:置。果。#include 2.取出二维数组中的字符存放#define M 3到一维数组(己计算出的位置)#define N 4中。注意:源程序存放在考生文件夹参考答案:下的BLANK 1.C中。void fun(char sN, char *b)不得增行或删行,也不得更改程void fun(char sN, char *b)(序的结构!(给定源程序:int i,
14、j,n=O;#include for(i=0; i N;i+) /* 请填写相int i,j,n=O;#define N 5应语句完成其功能*/for(i=0; i N;i+) /* 请填写相typedef struct student (应语句完成其功能*/long sno;(char name10:比=10;for(j = 0;jM;j+)float score3;bn = sUi;)STU;main()n = i * M + j + 1;void fun(char * filename, STU n)char) HLE *fp;a100,wMN=W;W;WV)/*於und*/W,S7SV
15、SVS, )bn=V);fp = fopen(_l_, Hrb+);;)/*佑und*/int ij;fseek(_2_,-lL*sizeof(STU),printf(The matrix:nM);SEEK_END);for(i=0; iM; i+)/*於und*/1fora=0;jN;第03套:fwrite(&n, sizeof(STU), 1,j+)printfC%3c,wij);printf(,T);程序通过定义学生结构体变量,_3_);存储了学生的学号、姓名和3门fclose(fp);课的成绩。所)fun(w,a);有学生数据均以二进制方式输main() STU tN= lOOOIJM
16、aChao”, 91, 92, 77), 10002;,CaoKai,; 75, 60, 88),10003,“LiSi”, 85, 70, 78, 10004,TangFangH, 90, 82, 87), 10005;ZhangSan, 95, 80, 88);STU n=(10006,ZhaoSi,; 55, 70, 68, 8sN;int ij; FILE *fp;fp = fopen(student.dat, wb11);fwrite(t, sizeof(STU), N, fp); fclose(fp);fp = fopen(student.dat, rb); fread(ss, s
17、izeof(STU), N, fp); fclose(fp);printf(nThe original data :nnM);for (j=0; jN; j+) printf(nNo: %ld Name: %-8s Scores: H,ssj.sno, ssj.name);for (i=0; i3; i+) printf(H%6.2f ssj.scorei);printf(HnH);funCtudent.dat1, n);printf(HnThe data after modifing :nn*);fp = fopen(student.dat, rb); fread(ss, sizeof(ST
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 语言 上机 题库 100
限制150内