北京科技大学《C 语言程序设计》2024 - 2025 学年第一学期期末试卷_第1页
北京科技大学《C 语言程序设计》2024 - 2025 学年第一学期期末试卷_第2页
北京科技大学《C 语言程序设计》2024 - 2025 学年第一学期期末试卷_第3页
免费预览已结束,剩余3页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(第2页)制卷人签名:制卷日期:审核人签名::制卷人签名:制卷日期:审核人签名::审核日期:………………………………………………装……订……线…………………学院专业/班级学号姓名题号一二三四五六七八总分阅卷教师得分………………一、选择题(总共10题,每题3分,每题只有一个正确答案,请将正确答案填写在括号内)1.以下关于C语言标识符的描述,正确的是()A.标识符只能由字母、数字和下划线组成B.标识符可以以数字开头C.关键字可以作为标识符D.标识符区分大小写2.若有定义:inta=5,b=2;则表达式a%=b+3的值为()A.0B.1C.2D.33.以下哪个语句可以实现将字符变量ch中的大写字母转换为小写字母()A.ch=(ch>='A'&&ch<='Z')?ch+32:ch;B.ch=(ch>='a'&&ch<='z')?ch-32:ch;C.if(ch>='A'&&ch<='Z')ch+=32;D.以上都可以4.对于循环语句for(表达式1;表达式2;表达式3),其中表达式2的作用是()A.初始化循环变量B.判断循环条件C.更新循环变量D.执行循环体5.以下关于数组的定义,正确的是()A.inta[]={1,2,3,4,5};B.inta[5]={1,2,3,4,5,6};C.inta(5)={1,2,3,4,5};D.inta[]=;6.若有函数定义:voidfun(intx){x=10;},则调用该函数后,实参的值()A.会改变B.不会改变C.部分改变D.视情况而定7.以下关于指针的说法,错误的是()A.指针变量中存放的是一个地址B.可以通过指针间接访问其所指向的变量C.指针可以指向任何类型的变量D.指针变量的类型必须与它所指向的变量类型一致8.若有定义:charp="hello";则以下说法正确的是()A.p指向字符串常量“hello”,可以修改该字符串B.p指向字符串常量“hello”,不能修改该字符串C.p指向一个字符数组,该数组中存放的是“hello”D.p指向一个字符数组,该数组可以重新赋值9.以下关于结构体的描述,错误的是()A.结构体是一种用户自定义的数据类型B.结构体中的成员可以是不同类型的数据C.定义结构体变量时,系统会为其分配内存空间D.结构体变量不能作为函数参数传递10.若要打开一个已存在的文本文件进行读取,应使用的文件打开方式是()A."r"B."w"C."a"D."rb"二、多项选择题(总共5题,每题4分,每题有多个正确答案,请将正确答案填写在括号内,少选、多选、错选均不得分)1.以下哪些是C语言中的基本数据类型()A.intB.floatC.doubleD.charE.void2.以下关于运算符优先级的说法,正确的是()A.算术运算符优先级高于关系运算符B.逻辑运算符优先级高于赋值运算符C.括号可以改变运算符的优先级D.自增自减运算符优先级高于算术运算符E.逗号运算符优先级最低3.以下哪些语句可以实现输入一个整数并存储到变量a中()A.scanf("%d",&a);B.cin>>a;C.a=getchar();D.a=scanf("%d");E.gets(&a);4.以下关于函数的说法,正确的是()A.函数可以嵌套定义B.函数可以递归调用C.函数的形参和实参个数必须相同D.函数的返回值类型必须与函数定义时的返回值类型一致E.函数可以没有返回值5.以下关于文件操作的说法,正确的是()A.文件打开后必须进行关闭操作B.可以使用fputs函数向文件中写入字符串C.使用fscanf函数从文件中读取数据时,格式控制字符串必须与文件中数据格式一致D.文件指针指向文件的开头时才能进行读取操作E.可以使用fseek函数移动文件指针三、判断题(总共10题,每题2分,请判断对错,在括号内填写“√”或“×”)1.C语言程序总是从main函数开始执行。()2.字符常量在内存中存储的是其对应的ASCII码值。()3.表达式5>3&&2<4的值为真。()4.数组名代表数组的首地址,因此数组名是一个指针变量。()5.函数定义时,形参列表中可以不指定形参的类型。()6.指针变量可以进行比较运算。()7.结构体变量可以整体赋值。()8.使用fopen函数打开文件时,如果文件不存在,则会自动创建一个新文件。()9.在C语言中,注释不会影响程序的执行结果。()10.一个C语言程序可以包含多个main函数。()四、程序填空题(总共3题,每题10分,请根据题目要求在横线处填写合适的代码)1.题目:编写一个函数,计算两个整数的最大公约数。```cintgcd(inta,intb){while(______){inttemp=a%b;a=b;b=temp;}returna;}```2.题目:编写一个程序,输入一个字符串,将其逆序输出。```cinclude<stdio.h>include<string.h>intmain(){charstr[100];printf("请输入一个字符串:");gets(str);intlen=strlen(str);for(inti=0;i<______;i++){chartemp=str[i];str[i]=str[______];str[len-1-i]=temp;}printf("逆序后的字符串为:%s\n",str);return0;}```3.题目:编写一个程序,使用冒泡排序法对一个整数数组进行升序排序。```cinclude<stdio.h>voidbubbleSort(intarr[],intn){for(inti=0;i<n-1;i++){for(intj=0;j<______;j++){if(arr[j]>arr[j+1]){inttemp=arr[j];arr[j]=arr[j+1];arr[j+1]=temp;}}}}intmain(){intarr[]={5,2,8,1,9};intn=sizeof(arr)/sizeof(arr[0]);bubbleSort(arr,n);printf("排序后的数组为:");for(inti=0;i<n;i++){printf("%d",arr[i]);}printf("\n");return0;}```五、程序设计题(总共2题,每题15分,请编写完整的C语言程序实现

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论