四川大学C语言2000q真题_跨考网
一、选择?span lang="EN-US">(每小?span lang="EN-US">2分,?span lang="EN-US">10?span lang="EN-US">)
(下在各小题,分别有一个或多个正确{案Q请所有正答案的~号Q填写在该小题题q后的括号内。错选或漏选均不得?span lang="EN-US">)?span lang="EN-US">
1、若定义Q?span lang="EN-US">int a[2][3]{0Q?span lang="EN-US">2Q?span lang="EN-US">4Q?span lang="EN-US">6Q?span lang="EN-US">8Q?span lang="EN-US">10?span lang="EN-US">;以下描述正确的有( AQ?span lang="EN-US">CQ?span lang="EN-US">DQ?span lang="EN-US">E )
A?span lang="EN-US">*(a+1)为元?span lang="EN-US">6的地址
q里a+1=a[1]的地址;*(a+1)的值是6,?span lang="EN-US">A正确?span lang="EN-US">
B?span lang="EN-US">*(a[1]+1)的gؓ(f)2
?span lang="EN-US">8,?span lang="EN-US">B不正?span lang="EN-US">
C?span lang="EN-US">**(a+1)+2的gؓ(f)8
q里a+1是一个指针,指向的是a[1]. *(a+1)?span lang="EN-US">a[1]Q?span lang="EN-US">a[1]指向的是a[1][0]. **(a+1)?span lang="EN-US">6,?span lang="EN-US">2?span lang="EN-US">8Q故C正确;
D?span lang="EN-US">a[0]?span lang="EN-US">a相同
因二者都是指针,指针的地址都是指向数组中的W一个元素的地址Q故D正确?span lang="EN-US">
E?span lang="EN-US">a[1][2]的gؓ(f)10
它是指第二行的第三个元素Qؓ(f)10,正确
2、对函数的正用方法描q?span lang="EN-US">( AQ?span lang="EN-US">CQ?span lang="EN-US">D )?span lang="EN-US">
A、用数组做函数参数时Q必d主调函数和被调函C分别定义数组
B、实参数l元素和形参数组元素cd可以不一?span lang="EN-US">
C、Ş参数l长度可以不指定 D、Ş参数l长度可以大于实参数l长?span lang="EN-US">
E、数l名做参数属于g?span lang="EN-US">
3、对?rn)态变量的正确描述( AQ?span lang="EN-US">BQ?span lang="EN-US">DQ?span lang="EN-US">E )
A、静(rn)态局部变量在?rn)态存储区内分配单?span lang="EN-US">( )
B、静(rn)态外部变量可以赋初|也可以不赋初?span lang="EN-US">
C、静(rn)态外部变量的作用与外部变量相?span lang="EN-US">
D、静(rn)态局部变量在函数调用l束Ӟ仍保存其|不会(x)随着消失?span lang="EN-US">
E、静(rn)态局部变量只赋一ơ初?span lang="EN-US">
4、下列描q正的?span lang="EN-US">( A Q?span lang="EN-US">C)?span lang="EN-US">
A、由main 函数?qing)其参?span lang="EN-US">argc?span lang="EN-US">* argv[]可以实现命o(h)行方?span lang="EN-US">
B、?span lang="EN-US">fclose关闭文gӞ先释放文件指针,再写~冲区数据到文g?span lang="EN-US">
//先写~冲区数据到文g?span lang="EN-US">,再释放文件指?span lang="EN-US">
C、字W数lƈ不要求它的最后一个字W是‘\0?p>
//是的Q以字符指针指向的字W串才要求,因ؓ(f)只有q样Q才能知道字W串的长度,而在字符数组中,不用\0,一样可以知道到哪里是字W数l的l尾?span lang="EN-US">
D?span lang="EN-US">‘A?/span>?span lang="EN-US">“A?/span>都是字符串常?span lang="EN-US">
E、若char*S=“\ta\017bc?则指针变?span lang="EN-US">S指向的字W串所占的字节数是7
5、在~冲文gpȝ中用于读写的函数?span lang="EN-US">( AQ?span lang="EN-US">BQ?span lang="EN-US">D )
A?span lang="EN-US">putchar () B?span lang="EN-US">fread() C?span lang="EN-US">rewind () D?span lang="EN-US">purw() E?span lang="EN-US">fseek()
二、程序阅读,q给?gu)行结?span lang="EN-US">(?span lang="EN-US">10分,每题5?span lang="EN-US">)?span lang="EN-US">
(1)main()
{ unsigned a,b,x
int n;
a=0x763 输出l果Q?span lang="EN-US">
n=6;
b=a<<(12-n);
x=(a>>n-2)^b; //+,-,的优先?span lang="EN-US"><<,>>高?span lang="EN-US">
printf(“\nb=%x,\nx=%x?b,x);
?span lang="EN-US">
在用2个字节表C整数的pȝ?span lang="EN-US">
l果?span lang="EN-US">
d
d8b6
在用4个字节表C整数的pȝ?span lang="EN-US">
l果?span lang="EN-US">
1d
1d8b6
故以上两U结果都正确?span lang="EN-US">
(2) #include ?span lang="EN-US">stdin.h?span lang="EN-US">
struct m {int x;
int *y;
?span lang="EN-US"> *p;
int a [4]={12Q?span lang="EN-US">33Q?span lang="EN-US">-40Q?span lang="EN-US">100?span lang="EN-US">;
struct m b [4]={10,&a[2],9,&a[3],8,&a[0],7,&a[1]?span lang="EN-US">'
main()
{
p=b; 输出l果:
printf(?d\n?++p->x); //->的优先高于++,因此{于?span lang="EN-US">++(p->x),?span lang="EN-US">11
printf(?d\n?(++p)->x); //p后移一个元素,?span lang="EN-US">xgؓ(f)9;
printf(?d\n?++(*p->y));
//->的优先高于*, 此时p已指?span lang="EN-US">b[1]Q故*(p->y)?span lang="EN-US">a[3]?span lang="EN-US">100.自加后ؓ(f)101;
?span lang="EN-US">
故输出结果ؓ(f)Q?span lang="EN-US">
11
9
101
三、程序设?span lang="EN-US">(?span lang="EN-US">10?span lang="EN-US">)
讑֜文ga.txt和文?span lang="EN-US">b.txt中分别存有两个字W串Q设计一个程序将q两个字W串按依序交叉的方式合ƈZ个字W串(例如“aaaaa?/span>?span lang="EN-US">“bbb?/span>的合q结果ؓ(f)“abababaa?/span>Q?span lang="EN-US">“bbb?/span>?span lang="EN-US">“aaaaa?/span>的合作结果ؓ(f)?bababaa?/span>Q?span lang="EN-US">)q将l果存入文ga.txt中?span lang="EN-US">
【答案?span lang="EN-US">
写程序时Q可以分别读?span lang="EN-US">a.txt文g?span lang="EN-US">b.txt文gQ注?span lang="EN-US">(1)Q无?span lang="EN-US">a文g先读完还?span lang="EN-US">b文g先读完,E序都能作出适应性的判断。注?span lang="EN-US">(2)?span lang="EN-US">a?span lang="EN-US">b合ƈ的结果,写到一个(f)时文?span lang="EN-US">c中,最后把c的文件覆盖到a文g中,辑ֈ题意的要求?span lang="EN-US">
#include
main()
{
FILE *fp,*fq,*fr;
char ch;
if((fp=fopen("a.txt","r+"))==NULL)
{ printf("cannot open file a.txt");
exit(0);
}
if((fq=fopen("b.txt","r"))==NULL)
{ printf("cannot open file b.txt");
exit(0);
}
fr=fopen("c.txt","w+");
while(!feof(fp))
{
ch=fgetc(fp);
fputc(ch,fr);
if(!feof(fq))
{
ch=fgetc(fq);
fputc(ch,fr);
}
}
while(!feof(fq))
{
ch=fgetc(fq);
fputc(ch,fr);
}
rewind(fp); rewind(fr);
while(!feof(fr))
{
ch=fgetc(fr);
fputc(ch,fp);
}
fclose(fp); fclose(fq); fclose(fr);
}
2022考研初复试已l接q尾壎ͼ考研学子全面q入2023届备?/b>Q跨考ؓ(f)23考研的考生准备?0大课包全E准备、全q复?fn)备考计划、目标院校专业辅对{全真复试模拟练?fn)和全程针对性指|2023考研的小伙伴针也已经开始择校和复习(fn)?jin),跨考考研畅学5.0版本全新升Q无Z在校在家都可以更自如的完成你的考研复习(fn)Q?/a>暑假集训?/span>带来?jin)院校专业初步选择Q明方向;考研备考全q规划,核心(j)知识点入门;个性化制定备考方案,助你赢在赯U,早出发一点离成功更q一点!
点击右侧咨询?/strong>直接前往?jin)解更?/strong>
考研院校专业选择和考研复习(fn)计划 | |||
2023备考学?/td> | 2023U上U下随时学习(fn) | 34所自划UK校考研复试分数U汇?/td> | |
2022考研复试最全信息整?/a> | 全国各招生院校考研复试分数U汇?/a> | ||
2023全日制封闭训l?/span> | 全国各招生院校考研调剂信息汇?/a> | ||
2023考研先知 | 考研考试U目有哪些? | 如何正确看待考研分数U? | |
不同院校相同专业如何选择更适合自己?/a> | 从就业说考研如何择专业? | ||
手把手教你如何选专业? | 高校研究生教育各学科门类排行?/a> |
相关推荐
跨考考研评
班型 | 定向班型 | 开班时?/td> | 高定?/td> | 标准?/td> | 评介绍 | 咨询 |
U季集训 | 冲刺?/td> | 9.10-12.20 | 168000 | 24800?/td> | 班面授+专业??+专业译֮向辅?协议加强评(高定?+专属规划{疑(高定?+_化答?复试资源(高定?+复试译(高定?+复试指导(高定?+复试班主?v1服务(高定?+复试面授密训(高定?+复试1v1(高定? | |
2023集训畅学 | 非定向(政英?数政qQ?/td> | 每月20?/td> | 22800?协议? | 13800?/td> | 先行阶在U课E?基础阶在U课E?强化阶在U课E?真题阶在U课E?冲刺阶在U课E?专业NҎ(gu)一对一评+班主dE督学服?全程规划体系+全程试体系+全程_化答?择校择专业能力定位体p?全年关键环节指导体系+初试加强?初试专属服务+复试全科标准班服?/td> |