《2022年武汉科技大学信息学院期末C语言程序设计试卷A .pdf》由会员分享,可在线阅读,更多相关《2022年武汉科技大学信息学院期末C语言程序设计试卷A .pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、注: 1、教师命题时题目之间不留空白;2、考生不得在试题纸上答题,教师只批阅答题册正面部分,若考生须在试题图上作解答,请另附该试题图。3、请在试卷类型、考试方式后打勾注明。(第1 页)试 题2011 年 2012 年第2 学期课程名称:C 语言程序设计专业年级:DB 电子信息工程2011 级考生学号:考生姓名:试卷类型:A 卷 B 卷 考试方式 : 开卷闭卷,一单项选择题 (每小题 2 分,共 10 分) 1.下面 _【1】_是将 x 的值正确赋值给了数组array 的第一个 元素。A)array=x; B) array=x0; C) array0=x; D) array1=x; 2._【2】
2、_函数的功能是在一个字符串末尾连接另一个字符串。A)strAdd B)strcat C)strcpy D)strcmp 3.C 语言规定,简单变量做实参时,它和对应形参之间的数据传递方式为【3】。A) 地址传递B)由实参传给形参,再由形参传回给实参C) 单向值传递D)由用户指定传递方式4.以下是正确定义指针变量同时使其指向整型变量x 的语句是 _【4】_。A) int *ptr=*x; B) int &ptr=*x; C) int *ptr=x; D)int *ptr=&x; 5. 以下程序的输出结果为【5】,#define PT 5.5 #define S(y) PT * y * y mai
3、n() int a=1,b=2; printf(“ %4.1fn” ,S(a+b); A) 12.0 B) 9.5 C)12.5 D)33.5二、填空题(每空2 分,共 28 分)1. 若 a 是 int 型变量,且a 的初值为6,则计算下列表达式后a 的值为【1】。a+= a- =a *a 2. 条件“ 2x6 ”的 C 语言表达式是_ 【2】_ 。3. int a=3,b=0; a|b=_【3】_ 。4. 若有如下定义:int num26=23,3,5,7,4,-1,6; int *n=num; 则 num5=_ 【4】_ ; *(n+1)=_ 【5】_; *n+3=_【6】_ ;名师资料
4、总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 注: 1、教师命题时题目之间不留空白;2、考生不得在试题纸上答题,教师只批阅答题册正面部分,若考生须在试题图上作解答,请另附该试题图。3、请在试卷类型、考试方式后打勾注明。(第2 页)5. 预处理命令包括_【7】_ 、文件包含和 _ 【8】_ 三种;6. 若有定义: char *name = “ Fellow me ” ,” Great wall ” ,” Fortran” ,” comp
5、uter design” ; char *p_str=name; 则*name1=_【9】_; 语句 puts(name2)的 执行结果 _【 10】_; strcmp(name2,name3)?puts(name2):puts(name3)的 执 行 结 果 为 _【11】;printf(“ %s,*(p_str+1)的 执行结果为 _【 12】_ 。7.若已定义:struct student int sno; name char20; float score; n=115,”liming ”,85;struct student *pn=&n; 下面两个语句均可以实现 功能,从键盘输入值存到
6、变量n 的 score 成员中 ; scanf(“ %d ” ,_ 【 13 】 _); scanf(“ %d ” , _ 【 14 】 _); 三、读下列程序,写出程序的运行结果(每题6 分, 共 18 分)1、 #include void main() int x; for(x=12;x7;x-=2) printf(x=%dn,x); 2、 #include void main() int List10=0; int i; for(i=0;i10;i+) printf(%d ,Listi); printf(n); for(i=0;i5;i+) List2*i+1=i+2; for(i=0;
7、i10;i+) printf(%d ,Listi); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - 注: 1、教师命题时题目之间不留空白;2、考生不得在试题纸上答题,教师只批阅答题册正面部分,若考生须在试题图上作解答,请另附该试题图。3、请在试卷类型、考试方式后打勾注明。(第3 页)3、#include int b=4; void fun1(int a,int b) int temp; temp=a; a=b; b=temp;
8、 void fun2(int *p1,int *p2) int temp; temp=*p1; *p1=*p2; *p2=temp; void fun3(int *p) static int c=1; *p=*p+c; c=c+1; void main() int a=10; printf(a=%d b=%dn,a,b); fun1(a,b); printf(a=%d b=%dn,a,b); fun3(&a); printf(a=%d b=%dn,a,b); fun2(&a,&b); printf(a=%d b=%dn,a,b); fun3(&a); printf(a=%d b=%dn,a,b
9、); 四、程序填空 ( 每空分,共18 分) 1、函数功能:将矩阵a99 左上方数据置1,右下方数据置-1,主对角线元素置0 void setArray(int a99) int i,j; for(i=0;i9;i+) for(j=0;j 【 1 】;j+) if(i+j=8) 【 2】; else if( 【 3 】) aij=1; else 【 4】; 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 -1 1 1 1 1 1 1 0 -1 -1 1 1 1 1 1 0 -1 -1 -1 1 1 1 1 0 -1 -1 -1 -1 1 1 1 0 -1 -1 -1 -1
10、-1 1 1 0 -1 -1 -1 -1 -1 -1 1 0 -1 -1 -1 -1 -1 -1 -1 0 -1 -1 -1 -1 -1 -1 -1 -1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - 注: 1、教师命题时题目之间不留空白;2、考生不得在试题纸上答题,教师只批阅答题册正面部分,若考生须在试题图上作解答,请另附该试题图。3、请在试卷类型、考试方式后打勾注明。(第4 页)2、 函数功能: 判断某一字符串是否是回文,
11、回文指正读和反读均一样的字符串,如 madam,level就是回文,若是返回1 否则返回 -1。【 5 】jughw(char *str) char *p1,*p2; int n; n=strlen(str); p1=str; p2=str+n-1; while( 【 6 】) if(*p1!=*p2) 【 7 】; else p1+; 【 8 】; if( 【 9】) return(1); else return(-1); 五、编程题 :( 共 26 分) 1、编写程序实现如下功能:查询整数数组num中出现整数m的次数 ,数组元素个数为10,整数 m由用户从键盘输入。 (12 分)2、编写程
12、序实现将n 个整数中前面各数顺序后移m 个位置,最后m 个变成最前面m 个数:(1)编写函数input, 完成功能从键盘输入n 个整数(2)编写函数output,完成功能输出n 个整数(3)编写函数move,完成功能将n 个整数中前面各数顺序后移m 个位置,最后m 个整数变成最前面m 个数;(3)编写主函数,分别调用以上函数实现功能:对输入的n 个整数按照move 函数方法调整,并将调整后的n 个数输出。 n=10,m 由用户从键盘输入(14 分)例如: 10 个整数为3 5 8 1 4 9 6 7 2 0 m=5,则调整后为9 6 7 2 0 3 5 8 1 4 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -