C语言期末考试试题.docx
- 文档编号:12018425
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:20
- 大小:19.50KB
C语言期末考试试题.docx
《C语言期末考试试题.docx》由会员分享,可在线阅读,更多相关《C语言期末考试试题.docx(20页珍藏版)》请在冰豆网上搜索。
C语言期末考试试题
以下叙述中正确的是
A.用C程序实现的算法必须要有输入和输出操作
B.用C程序实现的算法可以没有输出但必须要有输入
C.用C程序实现的算法可以没有输入但必须要有输出
D.用C程序实现的算法可以既没有输入也没有输出
以下选项中可作为C语言合法常量的是
A.-80
B.-080
C.-8e1.0
D.-80.0e
下列可用于C语言用户标识符的一组是
A.void,define,WORD
B.a3_3,_123,Car
C.For,-abc,IFCase
D.2a,DO,sizeof
若有语句char*line[5];以下叙述中正确的是
A.定义line是一个数组,每个数组元素是一个基类型为char为指针变量
B.定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组
C.定义line是一个指针数组,语句中的*号称为间址运算符
D.定义line是一个指向字符型函数的指针
以下定义语句中正确的是
A.inta=b=0;
B.chara=65+1,b=′b′;
C.floata=1,*b=&a,*c=&b;
E.D.doublea=0.0;b=1.1;
有以下程序段
charch;intk;
ch=′a′;
k=12;
printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);
已知字符a的ASCII码值为97,则执行上述程序段后输出结果是
A.因变量类型与格式描述符的类型不匹配输出无定值
B.输出项与格式描述符个数不符,输出为零值或不定值
C.a,97,12k=12
F.D.a,97,k=12
有以下程序
main()
{inti,s=1;
for(i=1;i<50;i++)
if(!
(i%5)&&!
(i%3))s+=i;
printf("%d\n",s);}
程序的输出结果是
A.409
B.277
C.1
D.91
当变量c的值不为2、4、6时,值也为"真"的表达式是
A.(c==2)||(c==4)||(c==6)
B.(c>=2&&c<=6)||(c!
=3)||(c!
=5)
C.(c>=2&&c<=6)&&!
(c%2)
D.(c>=2&&c<=6)&&(c%2!
=1)
若变量已正确定义,有以下程序段
inta=3,b=5,c=7;
if(a>b)a=b;c=a;
if(c!
=a)c=b;
printf("%d,%d,%d\n",a,b,c);
其输出结果是
A.程序段有语法错
B.3,5,3
C.3,5,5
D.3,5,7
有以下程序
#include
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:
a++;break;
case1:
b++;break;
}
case2:
a++;b++;break;
case3:
a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
A.a=1,b=0
B.a=2,b=2
C.a=1,b=1
D.a=2,b=1
下列程序的输出结果是
#include"stdio.h"
main()
{inti,a=0,b=0;
for(i=1;i<10;i++)
{if(i%2==0)
{a++;
continue;}
b++;}
printf("a=%d,b=%d",a,b);}
A.a=4,b=4
B.a=4,b=5
C.a=5,b=4
D.a=5,b=5
已知
intt=0;
while(t=1)
{...}
则以下叙述正确的是
A.循环控制表达式的值为0
B.循环控制表达式的值为1
C.循环控制表达式不合法
D.以上说法都不对
下面程序的输出结果是
main()
{inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
printf("%d\n",*(p+2));}
A.3
B.4
C.1
D.2
以下错误的定义语句是
A.intx[][3]={{0},{1},{1,2,3}};
B.intx[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
C.intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};
D.intx[][3]={1,2,3,4};
有以下程序
voidss(char*s,chart)
{while(*s)
{if(*s==t)*s=t-'a'+'A';
s++;}}
main()
{charstr1[100]="abcddfefdbd",c='d';
ss(str1,c);printf("%s\n",str1);}
程序运行后的输出结果是
A.ABCDDEFEDBD
B.abcDDfefDbD
C.abcAAfefAbA
D.Abcddfefdbd
有如下程序
main()
{charch[2][5]={"6937","8254"},*p[2];
inti,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>'\0';j+=2)
s=10*s+p[i][j]-'0';
printf("%d\n",s);}
该程序的输出结果是
A.69825
B.63825
C.6385
D.693825
有定义语句:
chars[10];,若要从终端给s输入5个字符,错误的输入语句是
A.gets(&s[0]);
B.scanf("%s",s+1);
C.gets(s);
D.scanf("%s",s[1]);
以下叙述中错误的是
A.在程序中凡是以"#"开始的语句行都是预处理命令行
B.预处理命令行的最后不能以分号表示结束
C.#defineMAX是合法的宏定义命令行
D.C程序对预处理命令行的处理是在程序执行的过程中进行的
设有以下说明语句
typedefstruct
{intn;
charch[8];
}PER;
则下面叙述中正确的是
A.PER是结构体名
B.PER是结构体类型名
C.typedefstruct是结构体类型
D.struct是结构体类型名
以下叙述中错误的是
A.gets函数用于从终端读入字符串
B.getchar函数用于从磁盘文件读入字符
C.fputs函数用于把字符串输出到文件
D.fwrite函数用于以二进制形式输出数据到文件
以下能正确定义一维数组的选项是
A.inta[5]={0,1,2,3,4,5};
B.chara[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′};
C.chara={′A′,′B′,′C′};
D.inta[5]="0123";
有以下程序
#include
main()
{charp[]={'a','b','c'},q[10]={'a','b','c'};
printf("%d,%d\n",strlen(p),strlen(q));}
以下叙述中正确的是
A.在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3
B.由于p数组中没有字符串结束符,长度不能确定,但q数组中字符串长度为3
C.由于q数组中没有字符串结束符,长度不能确定,但p数组中字符串长度为3
D.由于p和q数组中都没有字符串结束符,故长度都不能确定
有以下程序
#include
#include
voidfun(char*s[],intn)
{char*t;inti,j;
for(i=0;i for(j=i+1;j if(strlen(s[i])>strlen(s[j])){t=s[i];s[i]: s[j];s[j]=t;} } main() {char*ss[]={"bcc","bbcc","xy","aaaacc","aabcc"}; fun(ss,5);printf("%s,%s\n",ss[0],ss[4]); } 程序的运行结果是 A.xy,aaaacc B.aaaacc,xy C.bcc,aabcc D.aabcc,bcc 有以下程序 #include intf(intx) {inty; if(x==0||x==1)return(3); y=x*x-f(x-2); returny; } main() {intz; z=f(3);printf("%d\n",z); } A.0 B.9 C.6 D.8 下面程序段的运行结果是 charstr[]="ABC",*p=str; printf("%d\n",*(p+3)); A.67 B.0 C.字符′C′的地址 D.字符′C′ 若有以下定义: structlink {intdata; structlink*next; }a,b,c,*p,*q; 且变量a和b之间已有如下所述的链表结构: 指针p指向变量a,q指向变量c。 则能够把c插入到a和b之间并形成新的链表的语句组是: A.a.next=c;c.next=b; B.p.next=q;q.next=p.next; C.p->next=&c;q->next=p->next; D.(*p).next=q;(*q).next=&b; 对于下述程序,在方式串分别采用"wt"和"wb"运行时,两次生成的文件TEST的长度分别是: #include voidmain() {FILE*fp=fopen("TEST",); fputc(′A′,fp);fputc(′\n′,fp); fputc(′B′,fp);fputc(′\n′,fp); fputc(′C′,fp); fclose(fp);} A.7字节、7字节 B.7字节、5字节 C.5字节、7字节 D.5字节、5字节 变量a中的数据用二进制表示的形式是01011101,变量b中的数据用二进制表示的形式是11110000。 若要求将a的高4位取反,低4位不变,所要执行的运算是: A.a^b B.a|b C.a&b D.a<<4 下面的程序段运行后,输出结果是: inti,j,x=0; staticinta[8][8]; for(i=0;i<3;i++) for(j=0;j<3;j++) a[i][j]=2*i+j; for(i=0;i<8;i++) x+=a[i][j]; printf("%d",x); A.9 B.不确定值 C.0 D.18 下列程序执行后的输出结果是: voidfunc(int*a,intb[]) {b[0]=*a+6;} main() {inta,b[5]; a=0;b[0]=3; func(&a,b);printf("%d\n",b[0]);} A.6 B.7 C.8 D.9 C语言之所以也被称为中级语言,是因为它比高级语言的功能要少,而比低级语言的功能多。 C语言中,字符常量只能包含一个常量(字符)。 使用putchar()函数时,必须在之前包含头文件stdio.h。 逻辑运算符中的“&&”和“||”算符的优先级低于关系运算符,但“! ”高于算术运算符。 如果对二维数组的全部数组元素赋初值时,则定义数组时对第二维的长度可以不指定,但第一维的长度不能省。 C语言不能嵌套定义函数,也不可以嵌套调用函数,也就是说,在调用一个函数的过程中,不可以调用另一个函数. 在语句int*p,a;p=&a;*p=5;中两次出现的*p是同样的功能。 在C语言中,数组和结构体都属于构造类型数据。 ASCII文件便于对字符进行逐个处理,也不便于输出字符。 一般占存储空间较多,而且要花费转换时间。 C语言中,不要求对程序中所用到的变量进行存储类型定义. 给定程序的功能是: 计算并输出下列级数的前n项之和。 n的值通过键盘入。 34n+1 s=2+——+——+……+—— 23n 例如,输入的N值为50时,s的值为54.499205。 请在程序的下划线处填入正确的内容并把下划线及带括号的编号删除,使程序得出正确的结果。 注意: 源程序存放在考生文件夹下的BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include voidmain() { intn,i; doubles; printf("请输入要计算的项数: "); scanf("%d",&n); i=2; s=2.0; /********************found********************/ while(_ (1)_) { s=s+1.0*(i+1)/i; /********************found********************/ _ (2)_; } printf("%lf\n",s); }给定程序modi1.c的功能是: 求1到10的阶乘的和。 程序的正确结果应为: 4037913。 请改正程序中的错误,使它能得出正确的结果。 注意: 不得增行或删行,也不得更改程序的结构! #include voidmain() { inti,j; longt,s=0; /********************found********************/ for(i=1;i=10;i++) { t=1; for(j=1;j<=i;j++) /********************found********************/ t=t*i; s=s+t; } printf("%ld\n",s); } 请编写函数fun(),该函数的功能是: 求方程8x-5y=3,在|x|<=150,|y|<=200内共有的整数解的组数。 若fun()函数编写正确,程序的输出结果应为: n=50。 注意: 部分源程序在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include intfun() { } NONO() { FILE*wf; wf=fopen("test1.out","w"); fprintf(wf,"%d",fun()); fclose(wf); } voidmain() { intn; n=fun(); printf("n=%d\n",n); NONO(); }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 期末考试 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)