上海交通大学《C++程序设计》期末试卷

合集下载

C程序设计期末考试A卷期末试卷(附答案)

C程序设计期末考试A卷期末试卷(附答案)
{
x=x+1;
printf("f2:%d\n",x);
}
int main()
{
x=2;
printf("main:%d\n",x);
f1();
f2();
{
int x=10;
f1();
f2();
}
}
五、程序设计题(本题共20分)
(1)编写程序,输入一个学生成绩,根据成绩输出学生的等级。(8分)
分数段
对应的等级
[A] i=*p +*q;[B] a=i;
[C] *p = *(a+i);[D] i = *p**(q+2);
(13)
以下有关宏定义的叙述,正确的是________。
[A]宏名不具有类型[B]带参数的宏就是一个函数
[C]宏名必须用大写字母表示[D]宏定义和其它C语句,其末尾要加分号
(14)
若用数组名作为函数调用时的参数,则实际上传递给形参的是________。
(17)
以下有关switch语句的正确说法是________。
[A]break语句是语句中必须的一部分
[B]在switch语句中的每一个case都要用break语句
[C]break语句在switch语句中不可以使用
[D]在switch语句中可以根据需要使用或不使用break语句
(18)
以下正确的函数说明是________。
[C]n/=16[D]n%=16
(30)
[A]number[i]!=0[B]number[i]<10
[C]number[i]>0[D]number[i]>=10
(31)

上海交通大学数据结构与C语言程序设计习题及答案

上海交通大学数据结构与C语言程序设计习题及答案

专业课复习资料(最新版)封面数据结构与C语言程序设计一. 是非题(2’⨯10)( )1、 队列逻辑上是一个表头和表尾既能插入又能删除的线性表。

( )2、 任何一个递归过程都可以转换成非递归过程。

( )3、 与n个键值的集合{k1,k2,…,kn}相对应的堆是唯一的。

( )4、 在索引顺序表上实现分块查找,在等概率查找情况下,其查找长度只与表中元素个数有关,而与每块中元素个数无关。

( )5、 所谓加权无向图G的最小生成树T就是将G中各结点间的最短路径作为边所构造出来的G的子图。

( )6、 在10万个随机排列的数据中,要选出5个最小的数,采用快速排序比采用Shell排序、堆排序及各种直接排序法都快。

( )7、 B树查找算法的时间复杂性为O(n)。

( )8、 哈希表查找无需进行关键字的比较。

( )9、 在执行某个排序过程中,出现排序码朝着最终位置相反方向移动,则该算法是不稳定的。

( )10、任何有向图的顶点都可以按拓扑序排序。

二.填空题(2’⨯6)1.假设用于通信的电文由8个字母组成,其频率分别为0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10, 为这8个字母设计哈夫曼编码,其中编码长度最大的字母的编码是 位。

2.已知二叉树按中序遍历所得到的结点序列为DCBGEAHFIJK, 按后序遍历所得到的结点序列为DCEGBFHKJIA, 按先序遍历所得到的结点序列为 。

3. 设哈希表长度为11,散列函数H(k)=k MOD 11, 若输入顺序为(18,10,21,9,6,3,16,25,7),处理冲突方法为线性探测再散列,请构造哈希表 。

果 。

5.已知模式匹配的KMP算法中模式串t=’adabbadada’,其next函数的值为 。

6.在置换-选择排序中,假设工作区的容量为w,若不计输入、输出的时间,则对n个记录的文件而言,生成所有初始归并段所需时间为 。

三.简答题(6’⨯5)1.有n个不同的英文单词,它们的长度相等,均为m,若n>>50,m<5,试问采用什么排序方法时间复杂度最佳?为什么?2.对于一个栈,给出输入序列A,B,C,试给出全部可能的输出序列。

上海交通大学 2007-2008学年 程序设计基础(C++)期末考试试卷(附答案)

上海交通大学 2007-2008学年 程序设计基础(C++)期末考试试卷(附答案)
char *pt3="34";
pt3=pt2;//A
strcpy(pt1, pt2); //B
strcpy(pt2, pt3);//C
cout<<pt2;//D
}
9下列定义或者声明语句哪个是不正确的(D)
A void* f(int a[], int n);
B void* (*f)(int a[], int n);
3写出运行结果:
#include<iostream>
using namespace std;
void foo( int &c){
static a=1;
c+=a++;
}
void main()
{
int a;
int &b=a;
a=10;
foo(a);
cout<<a<<endl;
foo(++b);
cout<<a<<endl;
A break语句只应用于循环体中
B continue语句只应用于循环体中
C break是无条件跳转语句,continue不是
D break和continue的跳转范围不够明确,容易产生问题
4.有如下定义语句:int a[]={1,2,3,4,5};,则对语句int *p=a;正确的描述是(B)。
A语句int *p=a;定义不正确
一、选择填空:(每题1分,共10分)
1.已知各变量的类型说明如下:
inta=1,b=2;
double x=1.42;
则以下不符合C++语言语法的表达式是(D)

《C程序设计》课程期末考试及答案

《C程序设计》课程期末考试及答案
A) 11,11B) 10,10C) 10,11D) 11,10
2.欲将25和2.5分别赋给a和b,正确的输入方法是c。
int a;float b;scanf("a=%d,bபைடு நூலகம்%f",&a,&b);
A) 25 2.5B) 25,2.5C) a=25,b=2.5D) a=25 b=2.5
3.已知a为int型,b为double型,c为float型,d为char型,则表达式a+b*c-d/a结果的类型为c。
C)if(strcmp(s2,s1)>0)D)if(strcmp(s1,s2)>0)
15.以下程序的输出结果是。
void main()
{ int x=10, y=20;
y=fun(x);x=fun(y);
printf("%d,%d\n",x,y);
}
int x=0,y=2;
int fun (int x)
A)return语句中的表达式类型所决定B)调用该函数时的主调函数类型所决定
C)调用该函数时系统临时决定D)在定义该函数时所指定的函数类型所决定
11.下列程序的运行结果是a。
void fun(int *a,int *b){ int *k; k=a;a=b;b=k;}
void main()
{ int a=2004, b=9,*x=&a,*y=&b;
void main()
{ int i, a[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++)printf("%d ",a[2-i][i]);}
A)1 5 9B)7 5 3C)3 5 7D)5 9 1

程序设计(C)课程期末复习样卷

程序设计(C)课程期末复习样卷

上海交通大学继续教育学院网络教育——期末复习样卷课程名称:程序设计(C)一. 单项选择题(每题2分,共24分)1.C语言程序执行的起点是()A)子函数B)include语句C)main函数(主函数)D)define语句2.用C语言编写的程序称为()A)高级语言源程序B)汇编语言源程序C)机器语言程序D)高级语言目标程序3.在C语言中,用来表示“取地址”的符号是()A)#B)&C)*D)^4.x、y、z被定义为int型变量,若从键盘给它们输入数据,则正确的输入语句是()A)input x,y,z;B)scanf(“%d%d%d”,&x,&y,&z);C)scanf(“%d%d%d”,x,y,z);D)read(“%d%d%d”,&x,&y,&z);5.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()A. 大写字母B. 下划线C. 数字字符D. 连接符6.下列程序的运行结果是()#include <stdio.h>void main(){ int x, y;x = 10;y=(x = x - 5, x / 5);printf("y = %d\n", y);}A. y = 1B. y = 5C. y = 2D. 无法通过编译7.设n为整型变量,则for(n = 10; n >= 0; n--)循环的次数为()A. 9B. 10C. 11D. 128.设int i=0;下列语句中正确的是()。

A.i+1=i; B.i++=10; C.i<>0; D.i=i+1;9.设变量a是整型,f是实型,i是双精度型,则表达式10 + 'a' + i * f值的数据类型为()。

A.int B.float C.double D.不确定10.设整型变量a为5,使b不为2的表达式是()。

A. b=a/2B. b=6-(--a)C. b=a%2D. b=a>3?2:111.设有结构体的定义如下:struct data {char c1; char c2; } ; 则sizeof(struct data)的值是()。

交大程序设计C第二次作业Word版

交大程序设计C第二次作业Word版

以下说法中正确的是()选择一项:a. C 语言比其他语言高级b. C 语言不用编译就能被计算机执行c. C 语言以接近英语国家的自然语言和数学语言作为语言的表达形式d. C 语言出现得最晚,具有其他语言的一切优点题目2给定如下程序:#include <stdio.h>void main(){ char c1 =‘A’, c2 =‘a’;printf("%c\n", (c1,c2));}则以下叙述正确的是()选择一项:a. 程序输出大写字母Ab. 程序输出小写字母ac. 格式说明符不足,编译出错d. 程序编译通过,但运行时出错题目3下列程序的输出结果为()void main(){ int x, y, z;x = y = 1;z = x++, y++, ++y;printf(“%d, %d, %d\n”, x, y, z);}选择一项:a. 2, 3, 2b. 2, 3, 1c. 2, 2, 1d. 2, 3, 3题目4对表达式for( 表达式1; ; 表达式3)可以理解为()选择一项:a. for(表达式1; 表达式3; 表达式3)b. for(表达式1; 1; 表达式3)c. for(表达式1; 表达式1; 表达式3)d. for(表达式1; 0; 表达式3)有以下语句:int x; char c[10];则正确的输入语句是()选择一项:a. scanf(“%d%s”, x, &c);b. scanf(“%d%s”, x, c);c. scanf(“%d%s”, &x, c);d. scanf(“%d%s”, &x, &c);题目6下列程序的输出结果是()#include <stdio.h>void main(){ int a = 2, b = 3, c = 0, d;d = !a && !b ||!c;printf(“%d\n”, d);}选择一项:a. 编译出错b. 1c. -1d. 0题目7在C 语言中,复合语句要用一对()括起来。

C语言程序设计参考答案上海交大出版社

C语言程序设计参考答案上海交大出版社

第1章程序设计题参考答案1.代码1-1如下:2.代码1-2如下:3.代码1-3如下:4.代码1-4如下:5.代码1-5如下:“如何让你的幻灯片动起来”培训课时:一课时。

培训内容:“幻灯片切换”、“自定义动画”和“动作设置”(超链接)在幻灯片中的应用。

培训目标:这次培训要完成最后几张幻灯片的制作,你要对演示文稿设置幻灯片的切换效果,为幻灯片的文字、文本框等内容设置一些动画效果,例如文字显示的效果以及显示的顺序等。

1、为每张幻灯片设置切换效果以及换页方式等。

2、为幻灯片的标题、正文和图片等设置动画效果。

3、设置各个对象适当的显示顺序。

4、添加一些适宜的背景声音效果,以衬托主题内容。

5、合理利用“动作设置”中的“超链接”。

6、幻灯片“动画效果”以及“幻灯片切换”设计的注意事项。

培训过程:导言:到目前为止,你已经制作了幻灯片,学会了不少制作幻灯片的操作,幻灯片中有文字,也有图片,还有声音,你的演示文稿顿时变得既“活泼”又能“悦耳”了起来啦!假如能让幻灯片的文字、图片显示的时候多一些动画效果,让它“动”起来,那么幻灯片的效果一定更妙!新增加一张新的幻灯片,在幻灯片中加入文本框和正文。

(提示:点击菜单项“插入”->“新幻灯片”,在对话框中选择合适的版式)1、为每张幻灯片设置切换效果以及换页方式等。

(1)单击“幻灯片放映”菜单->“幻灯片切换”,出现一个对话框。

这时可以为当前的幻灯片设置切换时的“效果”、“换页方式”以及“声音效果”等。

(2)在“效果”区内选择幻灯片切换放映时的效果方式。

(3)在“速度”中选择显示速度。

(4)在“声音”栏内选择合适的背景声音。

(5)在“换片方式”中,选择下一张幻灯片出现时的操作方式。

(6)如果想把这种设置应用于所有幻灯片,就选择“应用于所有幻灯片”2、为幻灯片的标题、正文和图片等设置动画效果。

(1)选中需要设置动画效果的标题、正文或图片等。

(这是设置“自定义动画的前提)(2)单击“幻灯片放映”菜单 ->“自定义动画”,在屏幕右方出现一个对话框。

上海交大C 程序设计试题集(含答案).

上海交大C  程序设计试题集(含答案).

程序设计试题集一、单项选择题1.1.定义一个具有10个元素的整型数组,应当使用代码是A.int a[10]; B.int a[2, 5]; C.int a[]; D.int *a[10];1.2.设int a = 8, b = 7, c = 6, x = 1;执行以下语句后x的值是if (a > 6) if (b > 7) if (c > 8) x = 2; else x = 3;A.0 B.1 C.2 D.31.3.下列代码中,正确的数组定义是① int a[ ] = {“string”}; ② int a[5] = {0, 1, 2, 3, 4, 5};③ char a = {“string”}; ④ char a[ ] = {0, 1, 2, 3, 4, 5};A.① B.② C.③ D.④1.4.字符串”abc\x43\\\np\102q”的长度是A.9 B.12 C.13 D.171.5.执行下列程序后,输出的结果是#define M(a, b) (a) > (b)?(a)+(b):(a)-(b)void main(){ int i = 10, j = 15; printf(“%d\n”, 10*M(i, j)); }A.10 B.25 C.250 D.-501.6.执行下列程序后,输出的结果是#define M(a, b) (a) > (b)?(a):(b)void main(){ int i = 10, j = 5; printf(“%d\n”, M(i, j)*10); }A.10 B.5 C.100 D.1501.7.计算立方数时,不可能引起二义性的宏定义是A. #define S(x) x*x*x B.#define S(x) (x)*(x)*(x)C.#define S(x) (x*x*x) D.#define S(x) ((x)*(x) *(x))1.8.下列代码中,正确的是A. char a[3][ ] = {‘abc’, ‘1’};B. char a[ ][3] = {‘abc’, ‘1’};C. char a[3][ ] = {“ab”, “12”};D. char a[ ][3] = {“ab”, “12”};1.9.设char str1[10] = “ABCDE”, str2[10] = “xyzuvw”;则执行以下语句后的输出结果是printf(“%d”, strlen(strcpy(str1, str2)));A.12 B.11 C.8 D.61.10.以只写方式打开一个二进制文件,应选择的使用方式是A.”a+” B.”w+” C.”rb” D.”wb”1.11.设int x = 8, y, z; 执行y = z = x--; x = y == z后,变量x的值是A.0 B.1 C.8 D.91.12.设变量m ,n ,a ,b ,c ,d均为0,执行(m = a==b)||(n=c==d)后,m ,n的值是A. 0 ,0B. 0 ,1C. 1 ,0D. 1 ,11.13.设int x[ ] = {2, 6, 5, 7, 9, 15, 12}, *p = x;则不能正确引用数组元素的表达式是A.*(p--) B.*(--p) C.*(p++) D.*(++p)1.14.根据变量定义“static int b[5];”,b[4]的值是。

(2021年整理)2011上海交通大学C期末考A参考答案

(2021年整理)2011上海交通大学C期末考A参考答案

一、选择填空(每空1分,共20分)1、类Sample的拷贝构造函数的声明语句为C。

A.Sample(Sample other)B.Sample Sample(Sample other)C.Sample(const Samplet&other)D.Sample Sample(const Sample&other)2、Sample是用户定义的某个类,obj是Sample类的对象,p是Sample类的指针,则执行语句p=new Sample时会调用A函数,执行obj=*p时会调用C函数,执行delete p是会调用B函数。

A.Sample类的构造函数B.Sample类的析构函数C.Sample类的赋值运算符重载函数D.Sample类的拷贝构造函数3、对于下面定义的类class Base{protected:int x;public:Base(int val=1){x=val;}virtual void disp(){cout<<x<<endl;}void print(){cout<<x<<endl;}};class Derived:public Base{int y;public:Derived(int val1=0,int val2=0):Base(val1){y=val2;}void disp(){cout<<"x="<<x<<"y="<<y<<endl;}void print(){cout<<"x="<<x<<"y="<<y<<endl;}};有定义Derived dd(3,4);Base*bp=&dd,bb=dd;则dd.disp()执行的是A,dd.print()执行的是B,bp->disp()执行的是A,bb.disp()执行的是C。

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案

C语言程序设计期末考试试题含答案一、选择题(每题 2 分,共 40 分)1、以下选项中,不是 C 语言关键字的是()A intB floatC charD string答案:D解释:string 不是 C 语言的关键字,C 语言中表示字符串通常使用字符数组。

2、以下能正确表示八进制整数的是()A 0o123B 0123C 0x123D 123答案:B解释:在 C 语言中,八进制整数以数字 0 开头,所以 0123 是八进制整数。

3、以下变量定义中,合法的是()A int a=b=1;B char a='\0';C float 2a;D double a&;答案:B解释:A 选项中不能连续赋值;C 选项变量名不能以数字开头;D 选项变量名不能包含特殊字符&。

4、若有定义:int a=5, b=2; 则表达式 a/b 的值是()A 25B 2C 20D 3答案:B解释:C 语言中,两个整数相除结果为整数,舍去小数部分。

5、若有定义:int a5 ={1, 2, 3, 4, 5};则 a2的值是()A 2B 3C 4D 5答案:B解释:数组下标从 0 开始,所以 a2对应的值是 3 。

6、以下关于函数的叙述中,正确的是()A 函数可以嵌套定义B 函数可以嵌套调用C 函数可以没有返回值D 以上都不对答案:C解释:函数不能嵌套定义,但可以嵌套调用。

函数可以没有返回值,此时函数类型为 void 。

7、若有以下函数定义:```cint fun(int a, int b){return a + b;}```则调用 fun(1, 2)的返回值是()A 1B 2C 3D 4答案:C解释:函数 fun 实现了两个整数的相加,所以 fun(1, 2)的返回值是3 。

8、以下关于指针的叙述中,错误的是()A 指针可以指向变量B 指针可以指向数组C 指针可以指向函数D 指针不可以进行加减运算答案:D解释:指针可以进行加减运算,但运算的结果要根据指针所指向的数据类型来确定。

C语言程序设计期末考试卷及答案.doc

C语言程序设计期末考试卷及答案.doc

..C语言程序设计期末考试卷及答案一、单项选择题。

从A 、B 、C 、D 四个选项中,选择一个最佳答案填入括号内( 每小题1分,共计30分)。

1.一个C 语言程序的执行是从( )。

A )本程序文件的第一个函数开始,到本程序文件的最后一个函数结束B )本程序的main 函数开始,到main 函数结束C )本程序的main 函数开始,到本程序文件的最后一个函数结束D )本程序文件的第一个函数开始,到本程序的main 函数结束2.下列选项中不属于...C 语言关键字的是( )。

A )switch B )printf C )default D )case3.设有语句 int a = 4; ,则执行了语句 a += a -= a * a; 后,变量a 的值是( )。

A )24B ) -24C )4D )164.已知int i;float d;,则正确的表达式是( )。

A )(int d)B )int(d)%iC )(int)d%iD )int(d%i)5.已知int i,a;,执行语句i=(a=3*9,a/5),a+11; 后,变量i 的值是( )。

A )5B )16C )27D )386.下列选项中合法的字符型常量是( )。

A )"a"B )'\n'C )"\n"D )a7.下面程序的运行结果是( )。

#include <stdio.h> void main( ) { int k = 15;printf("k = %d,k = %o,k = %x\n",k,k,k); }A )k = 15,k = 15,k = 15B )k = 15,k = 17,k = 17C )k = 15,k = 017,k = 0xfD )k = 15,k = 17,k = f8.已知a,b,c 为int 类型,执行语句:scanf ("%d%d%d",&a,&b,&c );使得a 为10,b 为20,c 为30,以下不正确...的输入形式是( )。

(word版)C语言程序设计期末考试试题(含答案),文档

(word版)C语言程序设计期末考试试题(含答案),文档

语言程序设计期末考试试题及其答案一、单项选择题〔本大题共20题,每题2分,共40分〕1、以下不是C语言的特点的是()A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是()A、ABCB、abcC、a_bcD、3、一个C语言程序是由()A、一个主程序和假设干子程序组成B、函数组成C、假设干过程组成D、假设干子程序组成4、一个算法应该具有“确定性〞等5个特性,对另外4个特性的描述中错误的是()A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,那么表达式10+‘a’+i*f值的数据类型为()A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是()A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后〔<CR>表示回车〕,x的值是()。

#include<stdio.h>main(){intx;floaty;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、假设有以下定义inta,b;floatx,那么正确的赋值语句是()A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是()#include<stdio.h>{inti=10,j=10;printf("%d,%d\n",++i,j--); }A、11,10B、9,1C、11,9D、10,910、巳知字母A的ASCII 码是65,以下程序的执行结果是()#include<stdio.h>main(){charc1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、以下运算符中优先级最高的是()A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,那么下面表达式中值为0 是()。

C程序设计期末考试复习试卷(含答案)

C程序设计期末考试复习试卷(含答案)

期末考试试卷年(班)级 科目 C 语言程序设计一、单项选择题(每题1分,共20分)1、C 语言中,要求运算数必须是整型的运算符是( )A 、%B 、/C 、<D 、! 2、下列属于C 语言中合法标识符的是( )A 、8ZSeB 、NO.1C 、N0_1D 、aa$ 3、已知int j ,i=1;执行语句j=i++;后,变量i 的值是( )A 、1B 、2C 、-1D 、-2 4、执行下列两个语句后,输出的结果为( )char c1=65,c2=97; printf(“%c,%d ”,c1,c2);A 、65,98B 、65,aC 、A,97D 、A,a 5、C 语言源程序的基本单位是( )A 、过程B 、函数C 、子程序D 、标识符6、在C 语言中,if 语句后的一对圆括号中,用以决定分支流程的表达式为( )A 、只能是逻辑表达式B 、只能是关系表达式C 、只能是逻辑表达式或关系表达式D 、可以是任意表达式 7、若int i=10;执行下列程序后,变量i 的最后结果是( ) switch ( i ) { case 0: i+=1;case 10: i+=1; case 11: i+=1; default: i+=1; }A 、10B 、11C 、12D 、13 8、以下错误的描述是( )A 、break 语句不能用于循环语句和switch 语句外的任何其他语句B 、在switch 语句中使用break 语句或continue 语句的作用相同C 、在循环语句中使用continue 语句是为了结束本次循环,而不是终止整个循环D 、在循环语句中使用break 语句是为了使流程跳出循环体,提前结束循环9、有如下程序,该程序的执行结果是( ) main(){ int i,sum=0; for(i=1;i<=3;i++) sum+=i++;printf(“%d\n ”,sum); } A 、4B 、3C 、死循环D 、610、在宏定义#define PI 3.14 中,用宏名PI 代表一个( ) A 、变量B 、字符串C 、双精度数D 、单精度数11、C 语言中函数返回值的类型由( )决定的A 、return 语句中的表达式类型B 、调用该函数的主调函数的类型C 、调用函数时临时决定D 、定义函数时所指定的函数类型12、在C语言程序中,以下说法正确的是()A、函数的定义可以嵌套,但函数的调用不可以嵌套B、函数的定义不可以嵌套,但函数的调用可以嵌套C、函数的定义和函数的调用都不可以嵌套D、函数的定义和函数的调用都可以嵌套13、有如下程序,该程序的输出结果是( )long fib(int n){ if(n>2) return(fib(n-1)+fib(n-2));elseif(n==2) return(2);else return(1); }main(){ printf(“%d\n”,fib(4)); }A、3B、4C、5D、614、若有下面的变量定义,以下语句中合法的是()int i,a[10],*p;A、p=a+2;B、p=a[5];C、p=a[2]+2;D、p=&(i+2);15、数组的指针,其含义是指该数组的()A、值B、首地址C、名称D、一个标志16、若有说明:int a[3][4];则对a数组元素的正确引用是()A、a[2][3]B、a[1,3]C、a[1+2][0]D、a(2)(1)17、执行下列程序后y的值是( )main(){ int a[]={1,2,3,4},y,*p=a;y=*p++;} A、1B、2 C、3 D、418、以下程序的输出结果是( )void fun(int *a,int b){ *a=2; b=5; }main(){ int a=3, b=7;fun(&a,b);printf(“%d,%d\n”, a,b);}A、2,5B、3,7C、3,5D、2,719、语句int *f()的含义是( )A、定义一个指向函数的指针变量B、定义一个指向整型变量的指针变量C、说明函数f的返回值类型是指向整型变量的指针类型D、说明函数f的返回值类型是整型20、关于return语句,下列正确的说法是()A、可以在同一函数中出现多次B、必须在每个函数中出现C、只能在除主函数之外的函数中出现一次D、在主函数中不能出现二、填空题(每空2分,共20分)1、已知a=3,b=2,则表达式a*=b+8的值是( 30)。

C程序设计期末考试习题(含答案).doc

C程序设计期末考试习题(含答案).doc

c语言程序设计期末试题A(含答案)一、单项选择题(选择一个最佳答案,每题2分,共20分)1.一个C程序的执行是从()oA)木程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)木程序文件的第一个函数开始,到木程序main函数结朿2.下列选项屮,不能用作标识符的是()。

A)」234_ B)_l_2 C) int_2_ D) 2_int_3.以下定义语句屮正确的是()。

A) char a=,A,b=,B,; B) float a=b=10.0;C) int a=10,*b=&a; D) float *a,b=&a;4.设有以下定义:^define d 2int a=0; double b=l・25; char c二'A';则下面语句中错误的是()。

A) a++; B) b++ C) c++; D) d++;5.以下4个选项屮,不能作为一条C语句的是()。

A) {;} B) a=0,b=0,c=0;C) if(a>0); D) if(b==O) m= 1 ;n=2;6.有以下定义语句double a, b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是()。

A) a=a+b=b++ B) w%(int)a+b) C) (c+w)%(int)a D) w二a==b;7.设有定义:int n二0, *p二&n, **q二&p;则以下选项中,正确的赋值语句是()。

A)p=l; B) *q=2; C) q=p; D) *p=5;& 设有定义:int a, *pa=&a;以下scanf语句中能正确为变量a读入数据的是()。

A) scanf( "%d" ,pa); B) scanf( "%d” ,a);C) scanf( “%d”,&pa); D) scanf( "%d'' ,*pa);9.若有说明:char *language[] = {" FORTRAN" , ” BASIC" , ” PASCAL" , ” JAVA” , ” C” };则表达式^language[ 1]>*language[2]比较的是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档