第一范文网 - 专业文章范例文档资料分享平台

C语言程序设计模拟试题7(附答案)

来源:用户分享 时间:2025/7/27 8:58:57 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

《C语言程序设计》模拟试卷七

一、填空题。(每空2分,共30分) 1.下述算术表达式的结果值是___ __。 (int) (13.7+25.6)/4%4

则执行下述printf语句的输出结果是___ _。 printf(\5.执行下述程序的输出结果是_____ ______。 if (x[i]==y[i]) printf(\ else i++; #include

int strlength(char a[],char b[]) {

int num=0,n=0; 2.设整型变量value的值为20。执行下述程序段的输出结果是 。 if (value>=3) if (value>100)

printf(\ else

printf(\3.对于下述程序段 int b,c; float a;

scanf(\若欲使a、b、c的值分别为5.0、4、3,则应按如下形式输入数据:

_ __ 。 4.设int类型变量占内存两个字节,今有变量说明语句 int a=20;

#include main() {

int arr[10],i,k=0; for (i=0;i<10;i++) arr[i]=i; for (i=1;i<4;i++) k+=arr[i]+i/2; printf(\ }

6.执行下述程序的输出结果是__ _。 #include main() {

int i=0;

char x[]=\ char y[]=\

while (x[i]!='\\0'&&y[i]!='\\0')

printf(\ }

7.下述函数定义的功能是:把两个整数指针所指的存储单元中的内容进行交换。请填空。 void

exchange( ) { int t; t=*y; *y=*x; *x=t; }

8.设有如下变量说明语句 int

a[8]={44,55,12,42,94,18,6,67},*p=a; 则通过指针变量p引用值为18的表达式是____ 或 ____。 9.执行下述程序

while (*(a+num)!='\\0') num++; while (b[n]) {

*(a+num)=b[n]; num++; n++; }

return (num); } main() { char

str1[81],str2[81],*p1=str1,*p2=str2; gets(p1); gets(p2);

printf(\ }

若从键盘输入 qwerty abcd

则输出结果是____ ___。

10.下面的函数定义是一个求阶乘的递归调用函数。假定n≠0。请填空。 long fac(int n) { long f; if (n==0) f=1; else

f=___ ____; return (f); }

11.下述程序的功能是:输入n值,输出高度为n的、由字符'*'组成的直角三角形,例如当n=4时的输出图形如下(最后一行前面没有空格): * ** *** ****

请填空。

#include void func(char c,int n) {

if (n>0) {

printf(\ func(c,n-1); } } main() {

int i,n; scanf(\ for (i=1;i<=n;i++) {

____ ___; printf(\ } }

12.执行下述程序的输出结果

是 。

#include

#define COMP struct complex COMP {

float re; float im; };

void plus(COMP *z1,COMP *z2,COMP *z3) {

z3->re=z1->re+z2->re; z3->im=z1->im+z2->im; } main() {

COMP a,b,c; a.re=7.0; a.im=4.0; b.re=-2.0; b.im=5.5; plus(&a,&b,&c); printf(\i\\n\

}

13.以下程序在运行时输入 10 20 30

则输出结果是___ __。 #include

int func(int a,int b,int c) {

return (a+b+c); } main() {

int x,y,z;

printf(\ scanf(\ z=func(x,x+y,func(x,x+y,z)); printf(\ }

14.下面的程序把从终端读入的文本(用字符'@'作为文本结束标志)逐个字符复制到一个当前磁盘目录下名为bi.dat的新文本文件中。请填空。

#include

#include main() {

FILE *fp; char ch;

if ((fp=fopen(\ {

printf(\bi.dat.\\n\ exit(0); }

while ((ch=getchar())!='@') ;

fclose (fp); }

15. 执行下述程序的输出结果是 。

#include \int abc(int u,int v); int abc(int u,int v) { int w;

while(v)

{ w=u%v; u=v; v=w ;} return u; } main()

{ int a=24,b=16,c; c=abc(a,b); printf(\}

二、单项选择题。(每题1分,共20分) 1.在计算机上可以直接运行的程序是写【 】 A.高级语言程序 B.汇编语言程序 C.机器语言程序 D.C语言源程序 2.下列符号串中,合法的C语言标识将是【 】

A._121 B.121_ C.a.121

D.#121

3.下列符号串中,合法的十进制整型常量是【 】

A.09876 B.0x9876 C.9.876*e4 D.-9876

4.设有关变量已经正确定义并赋值,则下列表达式中符合C语言语法规则的是【 】 A.a_=\\12 B.a_1=a_2+=12 C.int13.5%2 D.a=b+7=C-2

5.若整型变量x的值为8,则下列表达式中值为1的表达式是【 】

A.x+=x-=x=x B.x%=x-1 C.x%=x%=3 D.x/=x+x

6.字符串\的长度是【 】 A.7 B.9 C.15 D.16 7.设有定义语句“int a=10,*p=&a;”,则表达式“a十*p”的值是【 】

A.10 B.20 C.100 D.语法出错 8.若有定义语句“int x,*p=&x,**ppx=&px;”,则下列表达式中错误的是【 】 A.x=*px B.x=**ppx C.px=&ppx D.*ppx=&x

9.如果某个函数在定义时,省略了存储类型,则默认的存储类型是【 】

A.auto B.void C.extern D.static

10.能正确定义一个用来指向打开文件的文件型指针变量fp的语句是【 】

A.file fp; B.file *fp; C.FILE fp; D.FILE *fp;

11.函数fopen()的返回值不能是【 】 A.NULL B.O C.1 D.某个内存地址

12.以只写方式打开一个二进制文件,应选择的文件操作方式是【 】 A.\+\+\

13.设有定义语句“char ch='\77';”,则下列说法中正确的是【 】

A.ch中含有1个字符 B.ch中含有2个字符

C.ch中含有3个字符 D.语法出错 14.设有函数调用语句“f(x1,x1+x2,(x1,

x2));”,正确的说法是【 】

A.调用的实际参数是2个 B.调用的实际参数是3个

C.调用的实际参数是4个 D.调用时会出现语法错误。

15.计算平方数时不可能引起二义性的宏定义A.若用值传递方式,则形式参数不予分配内存 CCC abc; case 是【 】

A.#define SOR(x)x*x B.#define SQR(x)(x)*(x)

C.# define SQR(x)(x*x) D.# define SQR(x)((x)*(x))

16.执行下列程序段后,x的位是【 】 int a=8,b=7,c=6,x=1;

if(a>6)if(b>7)if(c>8)x=2;else x=3;

A.O B.1 C.2 D.3

17.执行下列程序段后,变量y的值为【 】 int x[]={1,2,3,4},y,*p=&x[1]; y=(*--P)++;

A.1 B.2 C.3 D.4

18.能正确表达逻辑关系“-1<x<1并且-1<y<1”的表达式是【 】 A.(-1<x<1)&&(-1<y<1) B.(-1<x<1)&(-1<y<1)

C.((-1<x)||(x<1))&&((-1<y)||( y<1)) D.(-1<x)&&(x<1)&&(-1<y)&&(y<1) 19.函数调用时,下列说法中不正确的是【 】

B.实际参数和形式参数可以同名

C.主调函数和被调用函数可以不在同一个文件中

D.函数间传送数据可以使用外部全局变量 20.下列关于结构型变量的定义语句中,错误的是【 】

A. typedef struct CCC B. #define GGG struct

{ char name[20];GGG CCC { char name[20];

int age; int age;

}GGG; }; GGG abc ; GGG CCC abc;

C.struct D. struct { char name[20]; { char name[20];

int age; int age;

}ccc; }abc;

三、程序分析题(每题8分,共32分) 1.写出执行下述程序的输出结果。 #include main() {

int a=2,b=4,c=5; switch (a>0) {

int a=2,b=4,c=5; switch (a>0) {

case 1:switch (b=b>>2) {

case 1:printf(\ case 0:printf(\ default:printf(\ }

case 0:swith (c==5) {

0:printf(\ case 1:printf(\

dafault:printf(\ }

default:printf(\ }

printf(\ }

2.写出执行下述程序的输出结果。 #include #define N 5 main() {

int i,j,cent;

for (cent=1;cent<=N;cent++) {

for (i=1;i<=N-cent+5;i++) printf(\ for (j=1;i<=cent;j++)

搜索更多关于: C语言程序设计模拟试题7(附答案) 的文档
C语言程序设计模拟试题7(附答案).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c5bhhe1oy9p1j03v4hzhb_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top