c 程序设计语言西电科大,西安电子科技大学
西安电子科技大学网络与继续教育学院
2020 学年下学期
《高级语言程序设计(C)》期末考试试题
(综合大作业)
一、选择题(每小题 1 分,共 20 分)
1、有下列程序 main()
{
union
{
int k; char i[4];
}*s,a; s=&a;
s->k=0x38;
s->i[0]=0x39;
printf("%x\n",s->k);
}
输出结果是()。
A.38B.39C.3839D.3938
2、设 i 是 int 型变量,f 是 float 型变量,用下面的语句给这两个变量输入值:
scanf("i=%d,f=%f",&i,&f);
为了把 100 和 765.12 分别赋给 i 和 f,则正确的输入为()。
A.100765.12B.i=100,f=765.12 C.100765.12D.x=100,y=765.12
3、设已有定义: char *st="how are you"; 下列程序段中正确的是()。
A.chara[11], *p;strcpy(p=a+1,&st[4]); B.chara[11];strcpy(++a, st); C.chara[11];strcpy(a, *st); D.chara[], *p;strcpy(p=&a[1],st+2); 说明:char *strcpy(char* dest, char *src);
功能:把从 src 地址开始的字符串复制到以 dest 开始的地址空间 4、设 j 为 int 型变量,则下面 for 循环语句的执行结果是()。
for(j=10;j>3;j--)
{
if(j%3) j--; j-=2;
printf("%d",j);
}
A)6 3B)7 4C)6 2D)7 3
5、以下程序的输出结果是()。
main()
{int i,k,a[10],p[3]; k=5;
for (i=0;i<10;i++) a[i]=i;
for (i=0;i<3;i++) p[i]=a[i*(i+1)]; for (i=0;i<3;i++) k=p[i]*2; printf("%d\n",k);
}
A.22B.23C.25D.26
6、若有以下说明:
int w[3][4]={{0,1},{2,4},{5,8}};
int(*p)[4]=w;
则取 w 数组中的数值 4 的表达式是()。
A.*w[1]+1B.p++, *(p+1)C.w[2][2]D.p[1][1]
7、若 k 是 int 型变量,且有下面的程序片段:
k=-3
if(k<=0) printf("####") elseprintf("&&&&"); 上面程序片段的输出结果是()。
A.####B.&&&&C.####&&&&D.有语法错误 8、以下程序运行后,输出结果是()。
main()
{
int i=0,j, y=18, a[8]; do
{
a[i]=y%6; i++;
y=y/2;
} while(y>1); for(j=i-1;j>=0;j--)
printf("%d ",a[j]); printf("\n");
}
A.2450B.2430C.3240D.2320
9、以下叙述中不正确的是()。 A.在不同的函数中可以使用相同名字的变量 B.函数中的形式参数是局部变量 C.在一个函数内定义的变量只在本函数范围内有效 D.空类型函数返回值为 0
10、程序的输出结果是()。
int func( int a, int b)
{int c; c=a+b; return c;
}
main()
{int x=6, y=7, z=8, r; r=func(x+y,z); printf("%d\n",r);
}
A.11B.20C.31D.21
11、程序的输出结果是()。
main()
{int a=2,c=5; printf("a=%d,b=%d\n",a,c);
}
A.a=%2,b=%5 B.a=%d,b=%d C.2,5 D.a=2,b=5
12、设 a=1,b=2,c=3,d=4,则表达式:a
A.4 B.3 C.2 D.1 13、执行以下程序后,y 的值是( )。 main ( )
{ int a[]={2,4,6,8,10};
int y=1,x,*p; p=&a[1];
for(x=0;x<3;x++)y + = * (p + x); printf("%d\n",y);
}
A.17B.18C.19D.20
14、下面四个选项中,全是不合法的用户标识符的是()。
A.AP_0doB.floatla0_A C.b-agotointD._123tempINT 15、程序的输出结果是()。
intn=4;
while(n) printf("%d ",--n);
A.无输出B.4 3 2 1C.321 0D.210 0 16、设有如下的变量定义:
int i=8,k,a,b;
unsinged long w=5 double x=1,42,y=5.2
则以下符合 C 语言语法的表达式是()。
A.a+=(b=4)*(k=3)B.x%(-3)C.a*3=2D.y=float(i) 17、以下程序的输出结果是()。
main( )
{ int k=17; printf("%d,%o,%x\n",k,k,k);
}
A.17,21,11B.17,17,17B.17,0x11,021D.17,021,0x11 18、若有以下定义:
char a;int b; float c;double d;
则表达式 a*b+d-c 值的类型为()。
A.floatB.intC.charD.double 19、设有以下定义:
int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};
int (*prt)[3]=a,*p=a[0];
则下列能够正确表示数组元素 a[1][2]的表达式是()。
A.*((*prt+1) [2])B.*(*(p+5))C.(*prt+1)+2D.*(*(a+1)+2) 20、给出以下定义:
char x[]="abcdefg";
char y[]={'a','b','c','d','e','f','g'};
则正确的叙述为()。
A.数组 X 和数组 Y 等价B.数组 x 和数组 Y 的长度相同
C.数组 X 的长度小于数组 Y 的长度D.数组 X 的长度大于数组 Y 的长度
二、判断题(每小题 1 分,共 10 分)
1、若 a 是实型变量,C 程序中允许赋值 a=10,因此实型变量中允许存放整型数。()
2、函数中的局部变量都是动态存储。()
3、if 语句、switch 语句可以嵌套,而且嵌套的层数没有限制。()
4、函数的定义可以嵌套,但函数的调用不可以嵌套。() 5、do-while 循环中,根据情况可以省略 while。() 6、形参是虚拟的,不占用存储单元。()
7、用户若需要调用标准库函数,调用前必须重新定义。()
8、全局变量使得函数之间的"耦合性"更加紧密,不利于模块化的要求。()
9、在实际编程中,do-while 循环完全可以用 for 循环替换。()
10、自增运算符(++)或自减运算符(--)只能用于变量,不能用于常量或表达式。()
三、填空题(每空 1 分,共 10 分)
1、假定 p 所指对象的值为 25,p+1 所指对象的值为 46,则执行"(*p)++;"语句后, p 所指对象的值为 。
2、如果变量定义有:int a=9,c=8;则表达式(a!=c)? --a:++c 运算后变量
c 的值为 。
3、假定一个二维数组为 a[M][N],则 a[i]的地址可表示为 。 4、已有 int i,j; float x;为将-10 赋给 i,12 赋给 j,410.34 赋给 x;则对应
scanf("%d,%d,%f",&i,&j,&x)调用语句的数据输入形式是 。 5、若 x=5,y=10,则 x>y 和 x<=y 的逻辑值分别为 和 。
6、C 语言提供三种逻辑运算符,它们分别是 、 、 。
7、空字符串的长度是 。
四、程序分析题(每空 1 分,共 38 分)
1、读程序,填出表格内容(6 分)
main()
{
int n,s,sum=0; scanf("%d",&n); for(int i=1;i<=n;i++)
{
s=0;
for(int j=1;j<=i;j++) s+=j; sum+=s;
}
printf("%d",sum);
}
i 1 2 3 ... n
j 1 1~2 ...
s 1 1+2 ...
sum 1 1+(1+2) ...
2、读程序,填表(12 分)
void sub(int n, int uu[ ]) //————○1
{
if (n%2==0)uu[n]=uu[n]*2; else uu[n]=uu[n]%5;
}
main( )
{
int i,aa[10]={0,1,2,3,4,5,6,7,8,9};
for(i=0; i<10; i++) sub(i,aa);
for(i=0; i<10; i++) printf("%d ",aa[i]); //————○2
printf("\n");
}
i 0 1 2 3 4 5 6 7 8 9
○1 uu[i] 0 1 2 3 4 5 6 7 8 9
○2 aa[i] 0
sub 函数 参数 int n 含义:
参数 int uu[]含义:
函数功能:
3、读程序,填表(4 分)
double fun( double x, int y)
{ int i; double z;
for(i=1, z=x; i
}
i 1 2 3 ... y-1 y
z x ... 循环结束
fun 函数功能:
4、读程序,填表(16 分)
键盘输入一行字符(最后有回车):hello
#include"ctype.h"
#include"stdio.h" main()
{char str[81],*sptr; int i; for(i=0;i<80;i++)
{str[i]=getchar();
if(str[i]=='\n') break;
}
str[i]= '\0'; sptr=str;
while(*sptr) putchar(*sptr++);
}
下标 i 0 1 2 3 4 5
str[i] 'h'
sptr sptr=&str[0]
*sptr 'h'
程序功能:
五、编程题(每小题 11 分,共 22 分)
编程题要求:
(1)先给出伪代码,然后再写出源码,重要变量和语句要加注释; (2)若有子函数,则要给出函数框架设计(函数名、形参、返回类型)。 1、一个数如果恰好等于它的因子之和,这个数就称为“完数”。
例如 6=1+2+3,编程找出 1000 以内的所有完数。 2、编写一函数 fun,实现矩阵(3 行 3 列)的转置(即行列互换)。
c 程序设计语言西电科大,西安电子科技大学相关推荐
- 西电计算机网络ppt,计算机网络-西电个人主页-西安电子科技大学.ppt
计算机网络-西电个人主页-西安电子科技大学 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ...
- c语言报告西电,c语言课程设计报告西安电子科技大学.docx
C语言课程设计 题目名称: 7组 姓 名 学 号 130403100 专 业 自动化专业 班 级 1304031 指导教师 冯兰胜 编写日期 2016.5.16 需求分析 4.19 递归反向输出字符串 ...
- 高级语言程序设计——从C语言到c++(西安电子科技大学出版社)
C语言(大一上) 第一章 1.源程序文件 .c 目标程序文件 .obj 可执行文件. exe 2.c语言的注释(不对程序运行产生任何作用:在源程序中对特定的代码进行解释,起的标记相应代码的作用,增强程 ...
- 西电计算机学院2019年复试线,2021西安电子科技大学研究生分数线一览表(含2019 2020历年复试)...
西安电子科技大学2021年研究生的分数线是2022年研究生入学考试学生非常关心的问题,在选择研究生入学考试的院校和专业时,西安电子科技大学2021年研究生的分数线是一个非常重要的问题.为方便您查询,小 ...
- 西电计算机考研历年分数线,西安电子科技大学研究生,西电历年考研分数线?...
西安电子科技大学研究生院_西安电子科技大学研究生招生信息网_西安... 推荐您搜索:我想报考西电2011年通信专业研究生,麻烦告诉下西电历年初试分数线.另外. 西安电子科技大学本科招生信息网 西安电子 ...
- 西电2020计算机考研,西安电子科技大学研究生院,西电2020年考研成绩最新信息!...
西安电子科技大学研究生院在哪个校区 373分考2020年河北医科大学研究生,成绩已是不错.加油哈.后面还有复试.复试也要刷人的.河北医科大学等你来.这个分数对于电子信息专业来说,不算高,属于中等偏下水 ...
- 读书笔记-C语言程序设计-西安电子科技大学出版社-王娟勤-【未完待续】
C语言程序设计 王娟勤 西安电子科技大学出版社 ISBN-9787560636702 自建索引, 仅供参考, 以备后查 九.位运算 C语言提供6种基本位运算功能:位取反(单目运算).位与.位或.位异或 ...
- 西安电子科技大学833真题_2021年西电833amp;834专业课真题押题卷来临!购买全程讲课班即可获得...
写留言 今年 西安电子科技大学 833&834 押题卷题目正在一个一个出(11月前会最终完成,期间还要多次校验) 目前已经出的题目如图1 2 3购买全程班320元=数据结构+计组+真题讲课+押 ...
- 西安电子科技大学和杭电计算机,别只关注成电西电杭电,还有一所电子科技大学不错,二本招生...
说起"电子科技大学",大家最熟悉的莫过于成都的电子科技大学.西安的西安电子科技大学和杭州的杭州电子科技大学. 成电是985,西电是211,杭电虽属"双非",但是 ...
最新文章
- Ubuntu17.04安装WineQQ7.8及微信
- (1)kendo UI使用基础介绍与问题整理——简单说明
- 二叉树题目----1 前序中序后序遍历二叉树并返回相应的遍历(不是打印)
- 华三交换机如何进入配置_学校机房项目交换机的如何配置,理解这篇,交换机配置不再难...
- python 图片生成视频_python--通过cv2多张图片生成视频
- git删除中间某个commit
- 学生网上评教系统php,学生评教系统设计与实现.doc
- Android Theme.AppCompat 中,你应该熟悉的颜色属性
- CWM模式(卡刷)教程
- apipost自动化测试工具
- css3 图标效果,css3图标_纯CSS3图标旋转效果代码
- Tensorflow深度学习网络应用——英特尔神经计算棒编译
- 超酷炫技:10 个牛逼的单行代码编程技巧
- git恢复某个文件到上一个提交版本
- 百度提供的LBS服务
- Mathematica
- HTML CSS添加阴影
- mysql菜鸟指南(增删查改、数据类型、常用命令)
- altera 设计--仿真--下载
- 利用raphael画图
热门文章
- reduce 阶段遍历对象添加到ArrayList中的问题
- python之路_前端基础之jQuery入门2
- 每日一测1(带命令行参数运行)
- IT人必去的几大网站,国内外知名IT网站罗列!
- 2-算法 矩阵 数组类
- Python 3.x对MySQL数据库的常用操作
- Python多线程与Socket编程综合案例:素数
- Python字典二次开发实现稀疏矩阵表示与简单计算
- python比较文件每行长度_读取文件并查找所有行的长度是否相同
- java url拦截器框架_使用Spring Interceptor实现URL访问校验