C语言上机考试试题9
更新时间:2024-03-09 06:30:01 阅读量: 综合文库 文档下载
C 语言上机考试试题-9
一、选择题 (每小题2分 )
1. 用数组名作为函数的实参时,传递给函数的形参是________。 (A) 数组的首地址
(B) 数组的第1个元素 (D) 数组的元素个数
(C) 数组中的全部元素
2. 下列定义一维数组正确的写法是________。 (A) int a(10); (C) int n;
(B) int n=10, a[n]; (D) #define SIZE 10 int a[SIZE];
scanf(“%d”,&n); int a[n];
3. 下述函数头定义形式正确的是________。 (A) int f(int x; int y) (C) int f(int x, int y)
(B) int f(int x,y) (D) int f(x,y: int)
4. 以“只读”方式打开文本文件c:\\xy.txt,下列语句中哪一个是正确的________。 (A) fp=fopen(\.txt\ (B) fp=fopen(\.txt\ (C) fp=fopen(\.txt\
(D) fp=fopen(\.txt\
5. 判断变量x和y中有且只有一个值为0成立的表达式为________。 (A) !(x*y)&&x+y (B) (x*y)&&x+y (C) x*y==0 (D) x==0&&y!=0 6. 设有如下定义: struct ss{
char name[10]; int age; char sex;
} std[3],*p=std;
下面各输入语句中错误的是________。 (A) scanf(\ (C) scanf(\
(B) scanf(\(D) scanf(\
7. 语句“int a=0; if(a=1) a+=10;” 编译不会出错,但运行后a的值是________。 (A) 0
(B) 11
(C) 10
(D) 出错
8. 设有字符数组: char s[20];,能把一串字符: How do you do?<回车>全部输入的语句是________。
(A) scanf(\
(B) scanf(\
1
(C) gets(s); (D) scanf(\
9. 定义语句为“char a[10];”,执行下列语句后的输出结果为________。 printf(\,%d\\n\,sizeof(a),strlen(strcpy(a,\(A) 7,7 (B) 7,8
(C) 10,7
(D) 10,8
10. 若有定义:int k=1,*q;,下面赋值表达式正确的是________。 (A) q=&k
(B) *q=&k
(C) q=k
(D) *q=k
套数号 9 答案 1.A 2.D 3.C 4.B 5.A 6.B 7.B 8.C 9.C 10.A 二、 判断题 (每小题2分)
1. t=s; if(u>t) t=u;程序段可以实现将变量u, s中的最大值赋给变量t的功能。 2. 在定义了数组int a[5][6];后,第10个元素是a[4][2]。
3. 在C语言中,以下描述“任何子函数必须位于主函数之前”是正确的。 4. 设变量定义为char s[]=“hello”,则数组s中有5个元素。 5. 若x是单精度实型变量,表达式(x=10/4.0)的值是2.5。 6. 若变量已正确定义,表达式x=y=1符合C语言语法。 7. 表达式!(x>0‖y>0)等价于!(x>0&&!(y>0)。 8. 表达式( 0x19<<1)&0x7的值是3。
9. 在C源程序中将语句“if(x==5) y++;”误写成“if(x=5) y++;”,不会导致编译错误。 10. 式子!(a%2==0)在a为奇数时结果为假。
套数号 9 答案 1. T 2. F 3. F 4. F 5. T 6. T 7. T 8. F 9.T 10. F 三、填空题(每小题2分)
1. C语言中用于结构化程序设计的三种基本结构是: 顺序结构、________和循环结构。 2. int x=-17,y; 执行语句 y=x%4 后y的值为_______。
3. int x=10,y=4; float z=x/y; 执行语句printf(“%.2f”,z); 输出________。
4. a是一个值为两位数的整型变量,判断其个位数是大于等于5的奇数,而十位数是偶数的逻辑表达式为________。
5. 若 a=3、b=8、c=10,条件表达式 ((y=(a+6=5&&m%2==1&&m/10%2==0 (5) 20 2
四、程序改错题(每小题5分)
1. 以下程序输入数字:2 4,则程序运行结果为:8 4。 #include \void f(int a,int *b) { a=a+*b; *b=*b+a; }
int main() { int a,b;
scanf(\
f(b,a); /* $1 */
printf(\ return 1; }
操作说明:
在考生目录的**子目录下,有*.c文件,该文件中“/*$1*/”行中的语句f(b,a);有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:在程序中输入:2 4,得到输出数值:8 4。
参考答案:f(b,&a); 运行样例1行
运行样例1:4 8 运行结果:16 8
2. 以下程序输入数值:0 1 2,则程序运行结果为输出:1 3 7 15。 #include
{ int i,n[5]={0,0,0,0,0}; printf(\ for(i=0;i<=2;i++) scanf(\ for(i=1;i<5;i++) { n[i]=2*i+1; /*$*/ printf(\ } printf(\ return 1; }
操作说明:
在考生目录的**子目录下,有*.c文件,该文件中“/*$1*/”行中的语句n[i]=2*i+1; 有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:在程序中输入数值:1 2 3,得到输出数值:3 7 15 31。
3
答案:n[i]=n[i-1]*2+1; 运行样例3行
运行样例1:please input the nums: 1 2 3
运行结果:3 7 15 31
3. 下列程序是一个从考生文件夹中的文件ks.c中读出它的内容并显示在屏幕上的程序。假设文件ks.c中有语句how do you do . C,则程序运行结果为:how do you do . C 。 #include
操作说明:
在考生目录的**子目录下,有*.c文件,该文件中“/*$1*/”行中的语句fp=fopen(\有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:是一个从文件ks.c中读出它的内容并显示在屏幕上的程序。例如:假设文件ks.c中有语句how do you do . C,则程序运行结果为:how do you do . C
答案:fp=fopen(\ 运行样例1行
运行样例1:在ks.c文件中有语句:how do you do . C 运行结果:how do you do . C
4. 下列程序中函数fun功能实现m=1-2+3-4+…+9-10+…的和, 如果本程序输入数值:4 , 则程序运行结果为:m=-2。 #include
{ int m=0,f=1, i; for(i=1;i<=n;i++) { m=i*f; /* $1 */ f=(-1)*f; }
return m; }
int main()
4
{ }
int n;
scanf(\
printf(\return 1;
操作说明:
在考生目录的**子目录下,有*.c文件,该文件中“/*$1*/”行中的语句m=i*f; 有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:程序中函数fun功能实现m=1-2+3-4+…+9-10+…的和。例如:假设该程序输入数值:4 ,则程序运行结果为:m=-2。 答案:m=m+i*f; 运行样例1行
运行样例1:6 运行结果:-3
五、程序填空(每小题5分)
1. 下列程序功能:对变量地址的操作来完成赋值的过程。假设程序输入两个数:6 8,则程序最后一个printf()输出:8---8。 或者程序输入:1 2,则输出:2---2。根据这两次输入输出来填空。 #include \#include
int *p1,*p2; int a,b;
printf(\ scanf(\ p1=&a; *p1=100; /* $1 */ *p2=b;
printf(\ printf(\}
操作说明:
在考生目录的**子目录下,有*.c文件,该文件中“/*$1*/”行是根据程序功能需要填充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:对变量地址的操作来完成赋值。例如:假设程序输入两个数:6 8,则程序最后一个printf()输出:8---8。 或者程序输入:1 2,则输出:2---2。 答案:p2=p1; 运行样例2行
运行样例1:now input the nums: 6 8
5
运行结果:now output the nums: 8---8
2. 下列程序功能:实现对一个2维数组的转置(行列互换),请填空。 #include
printf(\ printf(\ }
for(i=0;i<3;i++) /* $1 */ { temp=a[i][j]; a[i][j]=a[j][i]; a[j][i]=temp; }
printf(\ for(i=0;i<3;i++) { for(j=0;j<3;j++)
printf(\ printf(\ } return 1; }
操作说明:
在考生目录的**子目录下,有*.c文件,该文件中“/*$1*/”行是根据程序功能需要填充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:实现对一个2维数组的转置(行列互换)。
答案:for(j=i;j<3;j++) 运行样例7行
运行样例1:1 2 3 4 5 6 7 8 9
运行结果 : first array: 1 2 3 now the array:1 4 7
4 5 6 2 5 8 7 8 9 3 6 9
6
六、程序设计(每小题10分)
1. 操作说明
编制程序:从程序中输入m,其中要求输入的m必须大于0且小于等于20。求表达式sum=1+1/2+1/3+1/4+~~~~~~+1/m的和sum,并将sum保留两位小数输出。 参考答案: #include \int main() { int m, i;
double sum=0.0,flag=1.0; do { printf(\ scanf(\ }while(m<0||m>20); for(i=1;i<=m;i++) { sum=sum+1/flag; flag++; } printf(\ return 1; }
运行样例2行
运行样例1:now input the num: 2 结果:1.50 运行样例2:now input the num: 10 结果:2.93
2. 操作说明
编制程序,计算输入字符串的长度及字符串中数字的个数,并输出。 参考答案
#include
if(c[i]>='0'&& c[i]<='9') j++; }
printf(\ %d\\n\}
运行样例1行
运行样例1:abcd123 结果:7 3
7
正在阅读:
C语言上机考试试题903-09
我的爷爷奶奶作文800字06-12
2016新课标高考第一轮历史总复习 第1讲 夏、商、西周的政治制度09-03
大一上学期(第一学期)高数期末考试题05-24
验工计价管理办法(试行)10-10
园林景观投标技术标01-12
- 冀教版版五年级科学下册复习资料
- 微生物学复习提纲
- 2013—2014学年小学第二学期教研组工作总结
- 国有土地转让委托服务合同协议范本模板
- 我的固废说明书
- 企业管理诊断报告格式
- 东鼎雅苑施工组织设计
- 谈谈如何做好基层党支部书记工作
- 浮梁县环保局市级文明单位创建工作汇报
- 管理学基础知识
- 大学物理实验报告23 - PN结温度传感器特性1
- 计算机网络实践
- 酒桌上这四种情况下要坐牢,千万别不当回事……
- 国家康居示范工程建设技术要点
- 中国贴布行业市场调查研究报告(目录) - 图文
- 新课标下如何在高中物理教学中培养学生的创新能力初探
- 营养师冬季养生食谱每日一练(7月4日)
- 关注江西2017年第3期药品质量公告
- 建设海绵城市专题习题汇总
- 10万吨年环保净水剂建设项目报告书(2).pdf - 图文
- 上机
- 考试试题
- 语言
- 2018-2024年中国麻纺行业深度研究与投资风险报告(目录)
- 瓦斯引水洞施工方案
- 基于STM32F429的嵌入式显示控制系统设计
- HTML试题
- 2018-2019强奸案件不能就案办案 - 刑法论文(1)-优秀word范文(4
- 最新2019中考英语试题解析汇编(第01期)专题03 单项选择(代词
- 人教版高中英语重点题型巩固练习 宾语从句和表语从句
- 2019年大学生就业形势2019大学生就业形势分析报告
- 2018年高考地理考前20天终极冲刺攻略专题10工业和产业转移
- 2012年度全国二级建造师执业资格考试
- 领导干部的创新思维讲稿
- 网络设备配置与管理试题
- 2018-2019年小学数学山西二年级开学考试测试试题含答案考点及
- 混辗式混砂机机械结构设计
- 铁磁材料居里点的测量 - 大物论文
- 13美术新课标理论资料
- 最新人教版新目标英语九年级-Unit9单元知识点小结(1)
- 超市管理系统数据库课程设计
- 2019年中考英语冠词考题汇集
- 人教版八年级语文下册第三单元测验题及答案