西华大学C语言程序设计复习题90.pdf
《西华大学C语言程序设计复习题90.pdf》由会员分享,可在线阅读,更多相关《西华大学C语言程序设计复习题90.pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.C 语言程序设计考试题型示例&复习例程 一、单项选择题 1以下四组变量标识符均为合法的是(B)。A)cosx_Value、CASE、sin(x)B)Sum_Value、x01_value、xxx C)a_b_c_01、D)Num#、abc_01、X_value_A 2设有二维数组定义:float a33;假设&a00=2001H,则&a22=(C)。A)2010H B)2036H C)2021H D)2024H 3设有整型变量 x 和 y,且 x=y=10;则计算表达式 x=(x+,y+),x+y;后 x 的值为(D)A)11 B)20 C)22 D)10 4如果要使用一维数组,其正确的定义
2、是(D )A)int array;B)const n=10,arrayn;C)int n,arrayn;cinn;D)int n=5,*array=new int n;5下述函数 myfun 的功能是(C)int myfun(char s,char t)(A)将字符串 t 复制到字符串 s char*ps=s,*pt=t;(B)将串 s 连接到串 t 的尾部 while(*ps)ps+;(C)将串 t 连接到串 s 的尾部 whie(*pt)*ps+=*pt+;(D)将字符串 s 复制到字符串 t *ps=0;6下面的程序运行后的输出结果是(A)void s*x,int*y)main()int
3、*t;int a=111,b=333;t=*x;*x=*y;*y=t;s);coutatbendl;(A)111 333 (B)333 111 (C)111 111 (D)333 333 7下面的程序运行后的输出结果是(A)int x=100;main()void myfun()int x=100;int i;myfun();for(i=1;i=10;i+)x+;coutxendl;(A)100 (B)110 (C)0 (D)随机值 8程序段char str110=”Hello”,str210=”Hello!”;if(strcmp(str1,str2)puts(“Yes”);else puts
4、(“No”);的输出结果是(B)A)No B)Yes C)语法错误 D)无输出结果 9下面的程序段的输出结果是(B).int a33=11,22,33,44,55,66,77,88,99;int*p=a0+1;cout*pt*(*(a+1)+1)=10)break;if(x%2)continue;sum=sum+x;A)6,10 B)6,12 C)7,10 D)7,12 15关于以下函数的功能,正确的描述是(C)void fun(int aC,int R)int i,j;A)输出矩阵全部元素 for(i=0;iR;i+)B)输出矩阵上半三角 for(j=0;ji)continue;coutse
5、tw(3)aij);D)没有什么输出结果 coutendl;.16在函数调用时,以下叙述中正确的是(A )A)实参与其对应形参各占独立的存储单元 B)实参与其对应形参共占同一个存储单元 C)只有实参与其对应形参同名时才共占同一存储单元 D)形参是一种虚拟的参数,不占存储单元 17若用数组名作为函数调用的实参,则实际传递给形参的是(A )A)数组首地址 B)数组首元素 C)数组全部元素 D)数组元素个数 18C 语言中,函数形式参数的默认存储类别是(B )A)extern B)auto C)register D)static 19下面的程序运行后的输出结果是(A )int x=100;main(
6、)void myfun(int*p)int i,x=*p;myfun(&x);for(i=1;i=10;i+)x+;coutxnum;B)(p+1)-score;C)(*p).num D)p=&stu.score 二、程序填空题 1函数 DecTo2816(int d,int r)的功能是将十进制整数 d 转换为 r 进制数的形式,实现方法是辗转除取余,将每次取得的余数转换为字符存入字符数组 trans后反向输出。void DecTo2816(int d,int r)int res,i=0;char trans33=0;while(d)res=d%r;/取余数 if(res=9)transi+
7、=0+res 【1】;/余数=0)put char(transi-)【3】;/反向输出trans中的字符 2 本程序功能是将两个递增整数表 LA=(3,5,8,11)和 LB=(2,6,8,9,11,15,20)归并到新的整数表 LC=(2,3,5,6,8,8,9,11,11,15,20)。整数表均采用单向链表存储。#include typedef struct elem /链表结点类型 intNode 的定义 int v;/数据域,存储整数 struct elem*next;/指针域 intNode;intNode*CreateList(intNode*Head,int n)/函数:创建能存
8、储 n 个整数的链表 intNode*pnew,*pend;int i;/pnew 用于创建新结点,pend 为辅助指针 for(i=1;ipnew-v;if(Head=NULL)Head=pnew 【4】;/若当前头指针为空,应赋什么值 else pend-next=pnew;/新结点接入当前尾部结点之后 pend=pnew;pend-next=NULL;/pend 更新,当前尾结点指针域赋空 return(Head);/返回链表头指针 /以下 MergeList()函数,归并 LA、LB 到 LC intNode*MergeList(intNode*LA,intNode*LB,intNod
9、e*LC)intNode*pa=LA,*pb=LB,*pnew,*pend;while(pa&pb 【5】)/当 pa 与 pb 不为空时 pnew=(intNode*)malloc(sizeof(intNode);/为 LC 创建新结点 if(pa-vv)/若结点 pa 的 v 值小于或等于 pb 结点的 v 值 pnew-v=pa-v;/LC 的新结点的 v 赋值为 pa 结点的 v 值 pa=pa-next;/当前结点处理完毕,pa 指针下移 else pnew-v=pb-v 【6】;pb=pb-next 【7】;if(LC=NULL)LC=pnew;/当前 LC 链表还为空 else
10、pend-next=pnew;pend=pnew;pend-next=NULL;.while(pa!=NULL)/如果 LA 比 LB 长,将剩余部分接入 LC pnew=new intNode;pnew-v=pa-v;pa=pa-next;pend-next=pnew;pend=pnew;pend-next=NULL;while(pb!=NULL)/如果 LB 比 LA 长,将剩余部分接入 LC pnew=new intNode;Pnew-v=pb-v 【8】;pb=pb-next 【9】;pend-next=pnew;pend=pnew;pend-next=NULL;Return LC 【
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西华 大学 语言程序设计 复习题 90
限制150内