ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:22.13KB ,
资源ID:19521396      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19521396.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(c语言试题及答案Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

c语言试题及答案Word文件下载.docx

1、D、A和“A”都是字符串常量E、若char*S=“ta017bc”;则指针变量S指向的字符串所占的字节数是75、在缓冲文件系统中用于读写的函数有(A,B,DA、putchar ()B、fread()C、rewind ()D、purw()E、fseek()二、程序阅读,并给出运行结果(共10分,每题5分)。(1)main()unsigned a,b,xint n;a=0x763输出结果:n=6;b=a(12-n);x=(an-2)b;/+,-,的优先级比高。printf(“nb=%x,nx=%x”,b,x);在用2个字节表示整数的系统中结果为d8c0d8b6在用4个字节表示整数的系统中1d8c0

2、1d8b6故以上两种结果都正确。(2) #includestdin.hstruct mint x;int *y;*p;int a 4=12,33,-40,100;struct m b 4=10,&a2,9,&a3,8,&a0,7,&a1main()p=b;输出结果:printf(“%dn”,+p-x); /-的优先级高于+,因此等于是+(p-x),为11printf(“%dn”,(+p)-x); /p后移一个元素,其x值为9;printf(“%dn”,+(*p-y);/-的优先级高于*,此时p已指向b1,故*(p-y)为a3为100.自加后为101;故输出结果为:119101三、程序设计(共1

3、0分)设在文件a.txt和文件b.txt中分别存有两个字符串,设计一个程序将这两个字符串按依序交叉的方式合并为一个字符串(例如“aaaaa”与“bbb”的合并结果为“abababaa”,而“bbb”与“aaaaa”的合作结果为“bababaa”,)并将结果存入文件a.txt中。【答案】写程序时,可以分别读取a.txt文件和b.txt文件,注意(1),无论a文件先读完还是b文件先读完,程序都能作出适应性的判断。注意(2)把a和b合并的结果,写到一个临时文件c中,最后把c的文件覆盖到a文件中,达到题意的要求。#includeFILE *fp,*fq,*fr;char ch;if(fp=fopen(

4、a.txt,r+)=NULL) printf(cannot open file a.txt);exit(0);网址:if(fq=fopen(b.txtrcannot open file b.txtfr=fopen(c.txtw+while(!feof(fp)ch=fgetc(fp);fputc(ch,fr);if(!feof(fq)ch=fgetc(fq);rewind(fp); rewind(fr);feof(fr)ch=fgetc(fr);fputc(ch,fp);fclose(fp);fclose(fq); fclose(fr);1.2四川大学2001年攻读硕士学位研究生入学考试试题及答

5、案1.2.1第2001年C语言程序设计题目一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码写在答题纸上。请注意注明题号。每小题1分,共计6分)1、t表示什么?字符串常数标识符变量字符常量答案:2、对宏定义不正确的描述是哪一个?在进行宏定义时,可以引用已经定义的宏名,可以层层置换/可以引用已经定义了的宏名,可以层层置换宏名的有效范围包括本文件的任何位置/宏名的有效范围定义命令之后到本源文件结束,可以用#define终止宏定义的作用域宠定义不是语句,不必在行末加分号/是预处理定义语句对程序中双引号括起来的字符串,即使与宏名相同,也不进行置换3、若定义static char

6、s20=”computer”;则执行语句x = strlen(s);之后,x的值为多少?209819/strlen函数计算char*型字符串的长度的时候,并不包含末尾的0;4、以下哪一个表达式取值是正确的?65结果为665结果为76|5结果为765结果为05、如定义enum weekdayone, two, thr, fou, fiv;enum weekday working;以下哪个是不正确的枚举变量的使用?working = thr;working =2;working = (enum weekday)2;working = (enum weekday) (5-3);/不能对其赋值6、下列

7、说法中正确的是哪一个?sizeof (char)是结果为整型的表达式sizeof (char)是一个不合法的表示形式sizeof (char)是一种函数调用sizeof (char)是结果为实型的表达式二、阅读程序,并回答问题(共12分)1、下列程序的输出是什么?(3分)# include void main ()char * aplha 6 =“ABC”,“DEF”,“GHI”,“JKL”,“MNO”,“PQR”;char *p;int i;p = aplha;for (i = 0; ib)swap (a, b);c)swap (a, c);if (bswap (b, c);printf (

8、“%d, %d, %d”, a, b, c);/函数swap采用值传递,虽然将形参x和y交换了,但是并不影响到实参。将值传递改成指针传递就可以了。C函数参数采用值传递方式,虽然swap函数将形式参数x和y的值进行了调换,但是影响不到相应的实在参数。所以在主函数中,通过调用sawp函数调换a和b(或a或c,或b和c)的值是根本达不到目的的。修改:(1)(2分)void swap (int *x, int*y)int t = *x;*x = *y;*y = t;(2)(2分)主函数if(aswap(a,b);swap(a,c);if(bswap(b,c);3、假设系统为基本整型量分配2个字节,为字

9、符型量分配1个字节。下列程序完成的功能是什么?unionchar ch 2;u;int m;scanf (“%d”,m);u.n = m;printf (“n%u, %u”,u.ch0, u.ch1);/该程序的功能,取用户输入的整数值的高字节和低字节,并按照任意整数的低字节和高字节分别输出。三、程序设计题(12分)假设一个文本文件中保存着100个整数,请将这100个整数按从小到大的顺序写到另一个文本文件中去,并且在新文件中每10个整数占一行。源文件名和目标文件名通过命令行参数获取。分数分配:变量定义2分命令行参数处理1分文件打开文件读排序3分文件写文件关闭void main(int argc

10、, char *argv)FILE *fin, *fout;Int a 100, i, j, t;if(argc!=3)printf (“ You forgot to enter a filenamen”);return;fin = fopen (argv1, “r”);fout = fopen (argv2, “w”);100;fscanf (fin,“%d”,ai);99;99i;if (ajaj+1)t = aj; aj = aj+1; aj+1=t;if (i%10 = 0)fprintf (fout, “%s”, “n”);fprintf (fout, “%d”, ai);fclos

11、e (fin);fclose (fout);1.3四川大学2002年攻读硕士学位研究生入学考试试题1.3.1第2002年C语言题目C语言程序设计(共30分)一、单项选择题(在每小题的四个备选答案中,选出一个正确答案。每小题1分,共6分)1、如果I为整型变量,f为float型变量,c表达式a+I*f的类型为。A、字符型B、整型C、单精度型D、双精度型/即使是两个float型的数据相加,都化成double型float型的数据在运算时一律转化成双精度型,提高其运算精度2、关于c表达式5|(a=b+c)=3的值,正确的说法为A、值为1B、值为5C、值为0D、仅这一个表达式,不能确定值,必须知道a,b,

12、c的值后才能计算。/等号=的优先级高于|所以先计算(a=b+c)=3但是不论它为真或假,在与5进行或运算时,按照或运算的法则,只要一方为真,表达式的结果为真。3、若整型变量a的值为50,则c表达式a2的值为A、50B、25C、12.5D、12/每右移一位除以2,且由于a为整型,结果为整型4、若c,c1,c2均为字符型变量,下列语句执行后。c=;c1=+c;c2=c+;c1,c2的值分别为A、c1=b,c2=cB、c1=, c2=C、c1=D、c1=/前加加,先加1后使用值,后加加是先使用其值在加加,所以c加加后的值赋予c1,c1得值b,c2先使用值,再加加,c2得值b5、以下c语句执行后,in

13、t i,s=0;for (i=0;i10;i+)s+=i;printf(%dn, i);输出的内容为A、0B、9C、10D、11/i值在循环外定义,所以其值循环结束仍有意义,得值106、以下c语句执行后,char s1100 =I like C 1anguage,s2100;strcpy(s2, s1);strcat (s1, s2);puts (s2);A、IB、I like C languageC、I like C language I like C languageD、I like C language I like C language I like C language/连接后的串存

14、在s1里,对s2没有影响二、阅读程序,写出该程序的执行结果。(4分)# includestdio.hvoid main (char a 3 10=Beijing Shanghai, Chengdu;char p1, (*p2)10;p1=a0;p2=a;printf(%cn,*(a1+1);/ a1代表是第一行字符串Shanghai,加1后得值第一个字符h的地址,*取出其地址里的值h,*(*(a+1)+2);/ *(a+i)=ai代表是第一行字符串Shanghai,加2后得值第2个字符a的地址,*取出其地址里的值,*(p1+1);/p1是一字符指针,加一指向第零行第1个字符e的位置,*取出其地

15、址里的值,*(*(p2+1)+2);/p2为一指向数组的指针,p2是与数组名等价的指针,它指向2维数组的首行,p21指针指向了第一行字串Shanghai,加2后得值第2个字符a的地址,*取出其地址里的值%sn/打印的从第一个字符开始的第零行余下的字符串eijing,*(p22);/p22指的是第二行,打印第二行字符串Chengdu,*(p21);/p2+1指向的是第一行字符串shanghai三、按要求编写函数。(8分)在一程序中定义了如下结构类型用于处理单向链表:struct linkageint value;struct linkage *pNext;现已经编写出按节点的成员a值从小到大建立

16、初始链表的函数create (),如下所示:struct linkage * create (void )struct linkage * pHead;int a4=2,1,3,5;pHead=NULL;for(i=0;i4;i+)pHead=addItem(pHead,ai);return pHead;在该函数的for循环前,pHead为NULL;在执行整个for循环后,创建的链表如下所示:即在被调函数addItem( )中,需要动态分配内存,生成新节点,将传入的第二参数的值赋给该节点的成员value:并通过第一个参数链表首节点确定适当位置放置该新节点。请完成函数:struct linkag

17、e * addItem (struct linkage *pHead, int value );返回值指向单向链表头节点。你可能用到下面的动态内存分配函数。void* malloc (unsigned int size);其作用是在内存的动态存储区中分配一个长度为size的连续空间。返回值为指向分配域起始地址的指针。1、在空链表中加第一个节点2分;2、加到当前链表头节点前2分;3、加到当前链表头节之后适当位置,可分为两步。2分;4、其它部分2分,包括整体结构,变量定义,返回值。struct linkage *addItem (struct linkgae *pHead ,int value)struct linkage *p ,*q,*r,*s;p=pHead;if(!p)r=(struct linkage *) malloc (sizeof (struct linkage);r-a=value;r-pNext =NULL;pHead=r;else if (value=p-a)r-pNext =p;elseq=ppNext;while (q)if (value=q-a)break;p=q;q=p-pNext;r=(struct linkage *)malloc (sizeof (struct linkage);r-pNext=q;p-pNext=r;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1