文档库 最新最全的文档下载
当前位置:文档库 › 2011秋江苏省计算机等级考试c语言试题答案

2011秋江苏省计算机等级考试c语言试题答案

2011秋江苏省计算机等级考试c语言试题答案
2011秋江苏省计算机等级考试c语言试题答案

2011年秋江苏省计算机二级C语言试卷

第一部分计算机基础知识

1.下列有关信息、信息处理、信息技术的叙述中,错误的是(1)

A.信息与物质、能量是客观世界的三大构成要素

B.与信息处理相关的行为和活动主要指信息的分类、计算、分析等,但不包括信息的

收集和传递

C.现代信息技术的主要特征之一是以数字技术为基础

D.计算机技术、通信技术均属于信息技术

2.下列有关数字技术与微电子技术的叙述中,错误的是(2)

A.数字技术是采用有限个状态(主要是两个状态)来表示、处理、存储和传输信息的技术

B. 比特是信息的基本单位,1个比特可以表示成8位二进制数

C. 集成电路芯片是微电子技术的结晶,是现代信息产业的基础

D. Moore定律是指“单块集成电路的集成度平均每18~24个月翻一番”

3.下列有关计算机发展与分类的叙述中,错误的是(3)

A. 数字电子计算机诞生于20世纪40年代,个人计算机(微型计算机)产生于20世纪

80年代初

B. 第4代计算机的CPU主要采用中小规模集成电路,第5代计算机采用超大规模

集成电路

C. 计算机分类有多种方法,按其内部逻辑结构通常分为16位机、32位机或64位机

等,目前使用的PC机大多是32位机或64位机

D.巨型计算机一般采用大规模并行处理的体系结构,我国国防科技大学研制的“天河一号”巨型计算机,其性能可在全球巨型机排行榜中位居前10名

4. 下列有关PC机微处理器的叙述中,错误的是(4)

A. 目前PC机所用的各种微处理器均由Intel公司设计和生产

B. 微处理器通常由单片集成电路制成

C. 一台高性能PC机通常包含多个微处理器

D. 台式PC机与笔记本PC机采用的微处理器通常有所不同

5. 下列有关PC机主板与芯片组的叙述中,错误的是(5)

A. 台式PC机主板的物理尺寸已经标准化

B.有些主板将声卡、网卡、显卡的功能均集成在其中

C. 芯片组是PC机各组成部分相互连接和通信的枢纽,它们与CPU芯片以及I/O接口

同步发展

D. PC机主板上可安装的内存条类型及内存最大容量与芯片组无关

6. 下列是PC机常用的四种外设接口,其中适用于连接硬盘和光驱的是(6)

A. RS-232

B. SATA

C. IEEE-1394

D. VGA

7. 下列有关显示器、显示卡、打印机的叙述中,错误的是(7)

A. 目前常见的“宽屏”LCD显示器,其屏幕的宽度与高度之比为4:3

B. 对于集成显卡来说,显卡的功能主要是由主板的芯片组来实现

C. 无论是针式打印机,还是激光/喷墨打印机,均有黑白打印机和彩色打印机之分

D. 打印机的主要性能指标之一是打印速度,其单位是PPM

8. 下列有关光盘存储器的叙述中,错误的是(8)

A. DVD光盘刻录机可以刻录的光盘有CD-R、CD-RW、DVD-R和DVD-RW等类型

B. 组合光驱(“康宝”)组合了CD刻录机与DVD刻录机的功能

C. 蓝色光驱(BD)使用蓝色激光在光盘上读写信息

D. 光盘刻录机的读/写速度通常是不同的,一般来说读取信息的速度快于刻录的速度

9. 按照软件著作权益的处置方式,软件可以分为商品软件、共享软件、自由软件等类型。

在下列叙述中,错误的是(9)

A.商品软件需要用户付费才能得到其使用权

B.共享软件是具有版权的软件,允许用户有条件的使用

C.自由软件允许使用者随意拷贝、传播,允许修改其源代码但必须公开修改内容

D.共享软件、自由软件均属于免费软件

10. 下列有关Windows操作系统的叙述中,错误的是(10)

A. Windows XP和Windows 7 均分为32位版本和64位版本

B. 一般来说,能安装Windows 7 的PC机也能安装Windows XP

C. 无论是Windows XP 还是Windows 7 ,其家庭版(基本版)均不支持多核处理器

D. 目前来看,Windows比UNIX更容易受到病毒的侵扰

11. 在下列有关算法的叙述中,错误的是(11)

A. 通俗地说,算法就是解决问题的方法和步骤

B. 算法总是在执行了有限步的操作后终止

C. 程序是算法的实现,程序与算法是一一对应的

D. 算法解决的往往是一类问题而不是一个特定的问题

12. 下列有关Microsoft Office 2000(及其后续版本)的叙述中,错误的是(12)

A. 由Word创建的文档,用户可以直接将其保存为HTML文件(即网页)

B. 在Excel中,用户可以直接打开一些数据库的表文件(例如DBF文件)

C. 在FrontPage的“代码”视图中,用户可以直接对HTML网页进行编辑

D. 在Access数据库中,每个表可以有多个主键

13. 下列是与通信传输介质相关的叙述,其中错误的是(13)

A. 目前家用的电话线属于五类双绞线

B. 目前入户的有线电视电缆属于宽带同轴电缆

C. 光纤是光导纤维的简称,光纤的纤芯是细石英玻璃丝

D. 微波是一种电磁波,它具有类似光波的特性,在空间主要是直线传播

14. 因特网中的IP地址可以分为A类、B类、C类、D类等。在下列4个IP地址中。属于

C类地址的是(14)

A.28.129.200.19

B.88.129.200.19

C.188.129.200.19

D.222.129.200.19

15. 在下列有关IP地址与域名的叙述中,错误的是(15)

A. 目前使用的IP协议主要是IPv4协议,其IP地址长度为32位

B. 因特网是多个网络互联而成的,不同网络中的主机可以具有相同的IP地址

C. 域名是IP地址的文字表述形式,但不是所有的IP地址均有相应的域名

D. 一个IP地址可以有多个对应的域名

16. 通常所说的TCP/IP协议,是指由100多个协议组成的协议系列(包含下列几个协议)。

在下列协议中,发送电子邮件主要依赖(16)

A.HTTP协议

B.FTP协议

C.Telnet协议

D.SMTP协议

17. 下列有关采用ADSL技术接入因特网的叙述中,错误的是(17)

A. 计算机中需要安装(集成)以太网网卡

B. 需要使用专用的ADSL MODEM设备

C. 上行与下行传输速率相同,传输速率可达100Mbps

D. 可传送数据、音频、视频等信息

18. 下列有关汉字字符集及其编码的叙述中,错误的是(18)

A. GB2312是我国颁布的第一个汉字编码国家标准,该标准包含了6000多个汉字

B. GB2312的所有字符在计算机内都采用2个字节来表示

C. GBK收录了包括繁体字在内的20000多个汉字和符号,它向下兼容GB2312

D. GB18030是我国最新颁布的汉字编码标准,它与Gb2312和GBK不兼容

19. 语音在数字化是常用的取样频率为8kHz、量化位数为8bits。若声道为2,则每分钟的

数字语音数据量在未压缩时大约为(19)

A.64KB

B.128KB

C.1MB

D.2MB

20. 数字图像文件有多种文件类型,不同类型的文件各有其特点。在下列4种文件类型中,

能够将多张图片保存在一个文件中且能够产生动画效果的是(20)

A.BMP

B.JPG

C.GIF

D.PNG

第二部分C语言程序设计

一.选择题

21. 某程序需要使用一个代表常数3.14的符号常量P,以下定义中正确的是(21)

A.#define P 3.14 ;

B. #define P(3.14)

C.#define P=3.14 ; D. #define P 3.14

22. 下列四个选项中,属于C语言关键字的是(22)

A. Float

B. single

C. double

D. real

23. 已知某编译系统中signed int 类型数据的长度是16位,该类型数据的最大值是

(23)

A. 32767

B. 32768

C. 127

D. 65535

24. 以下关于if语句和switch语句的叙述中错误的是(24)

A. if语句和switch语句都可以实现算法的选择结构

B. if语句和switch语句都能实现多路(两路以上)选择

C. if语句可以嵌套使用

D. switch语句不可以嵌套使用

25. 已有声明“char *1=”China”,s2[10],*s3=”Nanjing”,*s4;”,以下字符串赋值语句在

执行时可能出现错误的是(25)

A. strcpy(s3,s1);

B. strcpy(s4,s1);

C. strcpy(s2,s1);

D. strcpy(s2,s3);

26. 已有声明“int x=0,*p=&x;”,以下语句中有语法错误的是(26)

A. printf(”%d”,*x);

B. printf(”%d”,&x);

C. printf(”%d”,*p);

D. printf(”%d”,x);

27. 以下叙述中错误的是(27)

A. 在函数外可以声明变量

B. 变量声明的位置决定了该变量名的使用范围

C. 函数调用时在函数内声明的变量所得到的值将无法保存到该函数的下一次调用

D. 在函数外声明的变量,其值可以保存到该程序运行结束

28. 已有声明“int t=1;”,则执行“printf(”%d”,(t+5,t++));”时输出结果是(28)

A.1

B.6

C.2

D.7

29.已有声明“static char *p=”Apple”;”,则执行语句“puts(p+2);”时输出为(29)

A. Apple

B. Cpple

C. pple

D. ple

30. 以下选项均欲声明变量p,其中错误的是(30)

A. typedef struct Person

B. struct Person

{ char name [20];{ char name [20];

int age;int age;

}Per;};

Per p;struct Person p;

C.struct D. struct

{ char name [20];{ char name [20];

int age;int age;

}Per;}p;

Per p;

二.填空题(30分)

基本概念(5分)

1. C语言源程序中用十六进制表示整型常数必须以______(1)______开头。

2. 如果一个循环结构的循环体至少要执行一遍,则最适合描述该循环结构的语句是

___(2)______语句

3. 若要声明一个无符号整型变量x,则正确的声明形式是“_____(3)____int x;”。

4. 已有声明“int n=12;double a;”,则执行语句“a=n/=5;”之后,a的值为___(4)________。

5. 若有数据类型定义如下:

union A{float a1;float a2;};

则表达式sizeof(union A)的值为___(5)_______

?阅读程序(13分)

6. 以下程序运行时,输出到屏幕的结果是_______(6)____________

#include

enum color{BLACK,YELLOW,BLUE=3,GREEN,WHITE};

void main()

{ char *colorname[]={“Black”,“Yellow”,“Blue”,“Green”,“White”};

enum color c1=GREEN,c2=BLUE;

printf(“%s”,colorname[c1-c2]);

}

7. 下列程序运行时,输出到屏幕的结果是__(7)______

#include

void main()

{ int a=0,b=1,d=10;

if(a)

if(b)

d=20;

else

d=30;

printf(”%d\n”,d);

}

8. 下列程序运行时,输出到屏幕的结果中第一行是____(8)________,第二行是

____(9)______。

#include

void fun(int a,int *b)

{ a++;

(*b)++;

}

void main()

{ int a [2]=[1,1];

fun(a[0],&a[1]);

printf(”%d\n%d”,a[0],a[1]);

}

9. 以下程序运行时,输出到屏幕的结果中第一行是___(10)__________,第二行是

____(11)______,第三行是______(12)__________。

#include

#include

void main()

{ int a[100]={0},i,j,k;

for(i=1;I<100;i++)

a[i]=i+1;

printf(”%4d%4d %4d \n”,a[0],a[1],a[2]);

for(j=1;j<100;j++)

{ if(a[j]!=0)

for(k=j+1;k<100;k++)

if(a[k]%a[j]==0)

a[k]=0;

}

for(k=1,i=0;k<100;k++)

if(a[k]!=0)

{ printf(”%4d”,a[k]);

i++;

if(i%3==0)printf(”\n”);

}

}

10. 以下程序运行时,输出到屏幕的结果中第一行是__(13)______,第二行是___(14)______.

#include

#include

int fun(int a,int b)

{ int n;

while(a!=b)

{ n=abs(a-b);

a=(a>b)?b:a;

b=n

}

return a;

}

void main()

{ printf(”%d\n%d\n”,fun(9,15),fun(9,5); }

11. 以下程序运行时,输出到屏幕的结果的第一行是_____(15)_______,第二行是___(16)_______.

#include

int fun1(int p[],int n)

{ int I,s=0;

for(i=0;i

s+=p[i];

return s;

}

int fun2(int *s,int n)

{ if(n==1)

return *s;

else

return (*s)+fun2(s+1,n-1);

}

void main()

{ int a[]={1,2,3,4,5};

Printf(”%d\n%d”,fun1(a,3).fun2(a,3));

}

12. 以下程序运行时,输出到屏幕的结果的第一行是___(17)_________,第二行是_____

(18)_____.

#include

#include

int fun(char str[])

{ int i,j,len;

len=srlen(str);

for(i=0,j=0;str[[i];i++)

if((str[i]>=’A’&&str[i]<=’Z’) ∥(str[i]>=’a’&&str[i]<=’z’))

str[j++]=str[i];

str[j]=’\0’;

return len-j;

}

void main()

{ char ss [80]=”It23is!”;

Int n;

n=fun(ss);

printf(“%d\n%s\n”,n,ss);

}

13. 以下程序中judge函数的功能是判断x指向的int类型数组(长度为n)中各元素之间的

逻辑关系。若n个元素的值均相等则输出“all elements are same”;若n个元素的值无序则输出“no order”;若n个元素的值按升序排列则输出“ascend”;若n个元素按降序排列则输出“descend”。

#include

void judge(_________(19)__________),int n)

{ int f,i=0;

while(i

i++;

if(i==________(20)____________)

{printf(“\n all elements are same”)

return;

}

if(x[i]

else f=0

for(;i

if(f&&x[i]>x[i+1] ∥ !f&&_________(21)_________)

{ printf(“\n no order”);

return;

}

if(____(22)_______)printf(“\n ascend”);

else printf(“\n descend”);

}

void main()

{ int a[5]={1,2,3,4,5},b[5]={5,4,3,2,1},c[5]={2,2,2,2,2},d[5]={2,2,2,2,2};

judge(a,5);

judge(b,5);

judge(c,5);

judge(d,5);

}

14. 下列程序的功能是判断一个n 阶对称方阵是否双对称矩阵。4阶对称矩阵是指a ij =a ji

(1≤i ≤4,1≤j ≤4)。4阶双对称矩阵是指一个4阶对称矩阵的第1列与第4列对换,第2列与第3列对换后仍然是对称矩阵。函数issym (int m[][N],int n )的功能是判断二维数组m 中存放的一个n 阶方阵是否为对称矩阵,如果是则函数返回值1,否则返回值0。函数exchange (int a[][N],int n )的功能是将二维数组a 中存放的一个n 阶矩阵做横向翻转,即:将矩阵的第1列与第你列对换,第2列与第n-1列对换,···,直到n/2列为止。

例如,对称矩阵

是双对称矩阵,

而对称矩阵 不是双对称矩阵。

#include

#define N 10 void exchange(int a[][N],int n)

{

int I,j,t;

for(j=0;j

for(i=0;i

{ t=a[i][j];

______(23)_________=a[i][n-j-1];

a[i][n-j-1]=t;

}

}

int issym(int m[][N],int n)

{

int i,j;

for(j=i;j

for(j=I;j

if(_____(24)_________) /*对称矩阵判断*/ return 0;

______(25)_________;

}

1 -1

2 -

3 -1 0 3 2 2 3 0 -1 -3 2 -1 1 -5 -3 -2 -1

-3 6 9 1

-2 9 8 1

-1 1

1 0

void main()

{ int a[N][N];

Int n=4,i,j,r1,r2;

for(i=0;i

for(j=0;j

scanf(“%d”,&a[i][j]);

for(i=0;i

{ for(j=0;j

printf(“%4d”,a[i][j]);

printf(“\n”);

}

r1=issym(a,n);

exchange(___(26)______);

r2=issym(a,n);

if((r1+r2==2))

printf(“matrix is double symmetric\n”);

else

printf(“matrix is not double symmetric\n);

}

15.函数deletelist的功能:在head指向的单项链表中查找是否出现多分x值相同的节点。如果发现存在这样的结点,则保留第一个结点,删除其他重复出现的结点。

typedef struct point /*链表结点数据结构定义*/

{ int x;

struct point*next;

} (27);

POT *deletelist (POT*head)

{

POT*p,*p1,*p2;

p= (28);

while(p->next!=NULL)

{p1=p;

p2=p->next;

while(p2!=NULL)

{

if(P2->x==p->x)

{ p1->next= (29);

free(p2);

p2= p1->next;

}

else

{ p1=p2;

P2=p2->next;

}

}

p= (30); }

return head;

}

c语言试题及答案

1、以下正确的说法是( B ) (A) 用户若需要调用标准库函数,调用前必须重新定义 (B) 用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C) 系统根本不允许用户重新定义标准库函数 (D) 用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是( A ) (A) double fun(int x, int y) (B) double fun(int x; int y) (C) double fun(int x, int y); (D) double fun(int x,y); 3、以下正确的函数形式是( D ) (A) double fun(int x, int y) { z=x+y; return z;} (B) fun(int x,y) { int z; return z;} (C) fun(x,y) { int x,y; double z; z=x+y; return z;} (D) double fun(int x, int y) { double z; z=x+y; return z;} 4、以下正确的说法是( A ) 在C语言中 (A) 实参和与其对应的形参各占用独立的存储单元 (B) 实参和与其对应的形参共占用一个存储单元 (C) 只有当实参和与其对应的形参同名时才共占用存储单元 (D) 形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是( A ) 该函数 (A) 没有返回值 (B) 返回若干个系统默认值 (C) 能返回一个用户所希望的函数值 (D) 返回一个不确定的值 6、以下不正确的说法是( B ) C语言规定 (A) 实参可以是常量、变量和表达式 (B) 形参可以是常量、变量和表达式 (C) 实参可以为任意类型 (D) 形参应与其对应的实参类型一致 7、以下正确的说法是( C ) (A) 定义函数时,形参的类型说明可以放在函数体内 (B) return后边的值不能为表达式 (C) 如果函数值的类型与返回值类型不一致,以函数值类型为准 (D) 如果形参与实参的类型不一致,以实参类型为准 8、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是( B ) (A) 地址传递 (B) 单向值传递 (C) 由实参传给形参,再由形参传回给实参 (D) 由用户指定传递方式

C语言期末考试题(含答案)

《C 语言程序设计》期末试卷 一、单项选择题(10x2’=20’) 1、以下叙述正确的是() A )C 语言的源程序不必通过编译就可以直接运行。 B ) C 语言中的每条可执行语句最终都将被转换成二进制的机器指令。 C )C 语言源程序经编译形成的二进制代码可以直接运行。 D )C 语言中的函数不可以单独进行编译。 2、一个C 语言的源程序中() A )必须有一个主函数 B )可能有多个主函数 C )必须有除主函数外其它函数 D )可以没有主函数 3、以下不能定义为用户标识符的是() A )scanf B )Void C )_3com D )int 4、若以下选项中的变量已正确定义,则正确的赋值语句是() A )x1=26.8%3; B )1+2=x2; C )x3=0x12; D )x4=1+2=3; 5、设有定义:floata=2,b=4,h=3;以下C 语言表达式中与代数式h b a *)(2 1 的计算结果不.相符的是() A )(a+b)*h/2 B )(1/2)*(a+b)*h C )(a+b)*h*1/2 D )h/2*(a+b) 6、C 语言中用于结构化程序设计的3种基本结构是() A )顺序结构、选择结构、循环结构 B )if 、switch 、break C )for 、while 、do-while D )if 、for 、continue 7.在while (!x )语句中的!x 与下面条件表达式等价的是() A)x!=0B)x==1C)x!=1D)x==0

8、有以下程序: #include voidmain(){ inti=1,j=1,k=2; if((j++||k++)&&i++) printf(“%d,%d,%d\n”,i,j,k);} 执行后的输出结果是() A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,3 9、有以下程序: #include voidmain(){ inti,s=0; for(i=1;i<10;i+=2) s+=i+1; printf(“%d\n”,s);} 程序执行后的输出结果是() A)自然数1~9的累加和B)自然数1~10的累加和 C)自然数1~9中奇数之和D)自然数1~10中偶数之和 10、有以下函数定义: voidfun(intn,doublex){……} 若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是()A)fun(inty,doublem); B)k=fun(10,12.5); C)fun(x,n);D)voidfun(n,x); 二、填空题(10x2’=20’) 11、C语言描述“x和y都大于或等于z”的表达式是:。 12、函数定义时涉及的基本要素是:、、。

C语言试卷及答案

一、选择题(每题 1 分,共 20 分) 1. C 语言程序的三种基本结构是顺序结构、选择结构和结构。 A、循环 B、递归 C、转移 D、嵌套 2. 下列标识符中,合法的是_______ 。 A) unsigned B) 5ab C) INT# D)_num2 3. 若float x ;x = 10/4 ;x的值是。 A、2.5 B、2.0 C、3 D、 2 4. 表达式!x 等价于。 A、x==0 B、x==1 C、x != 0 D、x != 1 5. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为。 A、算术运算、赋值运算、关系运算 B、关系运算、赋值运算、算术运算 C、算术运算、关系运算、赋值运算 D、关系运算、算术运算、赋值运算 6. 能将高级语言编写的源程序转换为目标程序的是。 A、链接程序 B、解释程序 C、编译程序 D、编辑程序 7. 下列语句定义pf为指向float类型变量f的指针,是正确的。 A、float f, *pf = f; B、float f, *pf = &f; C、float *pf = &f, f; D、float f, pf = f; 8. 一个C程序的执行是从。 A、本程序的main函数开始,到main函数结束 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C、本程序的main函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 9. 能正确表示“当x的取值在[1,10]或[[200,210]范围内为真,否则为假”的表达式是________。 A、(x>=1)&&(x<=10)&&(x>=200)&&(x<=210) B、(x>=1)||(x<=10)||(x>=200)||(x<=210) C、(x>=1)&&(x<=10)||(x>=200)&&(x<=210) D、(x>=1)||(x<=10)&&(x>=200)||(x<=210) 10. 对两个数组a和b进行如下初始化 char a[]=“ABCDEF”;char b[]={ …A?,?B?,?C?,?D?,?E?,?F?}; 则以下叙述正确的是。 A、a和b数组完全相同 B、a和b长度相同 C、a和b中都存放字符串 D、a数组比b数组长度长 11. 是不正确的字符常量。 A、'\n' B、'1' C、"a" D、'\101' 12. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和等价。 A、k=(a>b)?1:0; B、k=a>b; C、k=a<=b; D、a<=b ? 0 : 1; 13. 设变量定义为“int x, *p=&x;”,则&*p相当于。 A、p B、*p C、x D、*&x 14. 有两个字符数组a、b,则以下正确的输入语句是。 A)gets(a,b); B) scanf(“%s%s”,a,b); C) scanf(“%s%s”,&a,&b); D) gets(“a”),gets(“b”); 15. C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是。 A、地址传递 B、单向值传递

(完整版)c语言期末考试题及其答案

选择题(7分,每小题0.5分) 1.C语言源程序的基本单位是()。 A 过程 B 函数 C 子程序 D 标识符 2.下列程序的输出结果是()。 main( ) { int a=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C 0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A 7 B 8 C 9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534; a=(int)125.521%4; a=5<<2; A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,20 5.设有如下程序段,下面描述中正确的是()。 int k=10; while(k=0) k=k-1; A 循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次 6.以下程序的输出结果为()。 int i; void prt( ) { for(i=5;i<8;i++) printf("%c",'*'); printf("\t"); } main( ) { for(i=5;i<=8;i++) prt( ); } A *** B *** *** *** *** C *** *** D * * * 7.在C语言程序中,以下说法正确的是()。 A函数的定义可以嵌套,但函数的调用不可以嵌套 B函数的定义不可以嵌套,但函数的调用可以嵌套

C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8.以下函数调用语句中含有()个实参。 func((e1,e2),(e3,e4,e5)); A 2 B 3 C 5 D 语法错误 9.以下程序的输出结果为()。 #define ADD(x) x*x main( ) { int a=4,b=6,c=7,d=ADD(a+b)*c; printf("d=%d",d); } A d=70 B d=80 C d=140 D d=700 10.已知职工记录描述如下,在Turbo C中,系统为变量w分配()字节的空间。 struct worker { int no; char name[20]; char sex; union { int day; int month; int year;}birth; } w; A 29 B 20 C 25 D 6 11.设有以下定义,值为5的枚举常量是()。 enum week{sun,mon=4,tue,wed,thu,fri,sat} w; A tue B sat C fri D thu 12.下面选项中正确的赋值语句是(设char a[5],*p=a;)()。 A p="abcd"; B a="abcd"; C *p="abcd"; D *a="abcd"; 13.设有以下程序段,则值为6的表达式是()。 struct st { int n; struct st *next;}; static struct st a[3]={5,&a[1],7,&a[2],9,0 },*p; p=&a[0]; A p++->n B ++p->n C p->n++ D (*p).n++ 写出下列程序的运行结果(10分,每小题2分) 1.float average (float array[10]) { int i;

c语言期末考试试题

一、单项选择题。(每题1分,共20分) 1. C程序的基本单位是:() A.子程序 B.程序 C.子过程 D.函数 2.在C语言中,非法的八进制是:() A.016 B.018 C.017 D.02 3. 不是C语言实型常量的是:() A.55.0 B.0.0 C.55.5 D.55e2.5 4 .字符串“xyzw”在内存中占用的字节数是:() A.6 B.5 C.4 D.3 5. 若已定义f,g为double类型,则表达式:f=1,g=f+5/4的值是:() A.2.0 B.2.25 C.2.1 D.1.5 D.1.5 D.1.5 D.1.5 6. 若有语句char c1=`d`,c2=`g`;printf(“%c,%d\n”,c2- `a`,c2-c1);则输出结果为:() (a的ASCII码值为97) A.M,2 B.G,3 C.G,2 D.D,g 7. 使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据 输入是:() A.a=2.2,b=3 B.a=2.2 b=3 C.2.2 3 D.2.2,3 8.表示关系12<=x<=y的C语言表达式为:() A.(12<=x)&(x<=y) B. (12<=x)&&(x<=y) C. (12<=x)|(x<=y) D.(12<=x)||(x<=y) 9.设x=1,y=2,m=4,n=3,则表达式x>y?x:mc4)后,s,t的值为:() A.1,2 B.1,1 C.0,1 D.1,0 12. 语句for(a=0,b=0;b!=100&&a<5;a++)scanf(“%d”,&b); scanf最多可执行次数为:() A.4 B.6 C.5 D.1 13. 对于for(s=2;;s++)可以理解为:()

C语言全部题目及答案

C语言全部题目及答案 SANY GROUP system office room 【SANYUA16H-

C语言全部题目及答案 Exercise 1: Programming Environment and Basic Input/Output 1.Write a program that prints “This is my first program!” on the screen. (a)Save this program onto your own disk with the name of e2-1a; (b)Run this program without opening Turbo C; (c)Modify this program to print “This is my second program!”, then save it as e2-1b. Please do not overwrite the first program. 2.Write a program that prints the number 1 to 4 on the same line. Write the program using the following methods: (a)Using four “printf” statements. (b)Using one “printf” statement with no conversion specifier(i.e. no ‘%’). (c)Using one “printf” statement with four conversion specifiers 3.(a) Write a program that calculates and displays the number of minutes in 15 days. (b) Write a program that calculates and displays how many hours 180 minutes equal to. (c) (Optional) How about 174 minutes?

c语言期中考试试题及答案

《C语言程序设计》期中考试试卷 课程编号:03402513试卷类型:A卷考试形式:笔试考试日期: 注意事项:1.请将试卷最后一页的答题纸撕下,将答案填写在其中;2.交卷时请确认答题纸是否按要求写好姓名等信息并与试题一起上交;3.不准携带任何书籍、资料、纸张等。4.草稿纸用试卷的背面。 一、单项选择题(1空1分,共20分) 1、C语言程序的基本结构是(【1】) 。 【1】A) 函数B) 语句C) 字符D) 程序行 2、一个C程序的执行是(【2】) 。 【2】A) 从本程序的主函数开始,到本程序的主函数结束 B)从本程序的第一个函数开始,到本程序的最后一个函数结束 C) 从本程序的主函数开始,到本程序的最后一个函数结束 D)从本程序的第一个函数开始,到本程序的主函数结束 3、下列四个叙述中,错误的是(【3】) 。 【3】A) 一个C源程序必须有且只能有一个主函数 B) 一个C源程序可以含一个或多个子函数 C) 在C源程序中注释说明必须位于语句之后 D) C源程序的基本结构是函数 4、下面不属于C语言保留字的是(【4】) 。 【4】A) short B) ELSE C) extern D) for 5、下列四个叙述中,正确的是(【5】) 。 【5】A) 库函数也是C语言本身的组成部分 B) C语言中的输入输出操作是由相应语句完成的 C) 库函数是C编译系统提供的功能函数 D) 标题文件(头文件)可以在程序的函数内部调用 6、下列四组数据类型中,C语言允许的一组是(【6】)。 【6】A) 整型、实型、逻辑型B) 整型、实型、字符型 C) 整型、双精度型、布尔型D) 整型、实型、复型 7、在C语言中不同数据类型的的长度是(【7】)。 【7】A) 固定的B) 由用户自己定义的 C) 任意的D) 与机器字长有关

大学C语言期末考试习题集(带详解答案)

一、单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从 C开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是( B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A) %x B) a+b C) a123 D) 123 选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai

c语言试题及答案 ()

第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由

主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 37 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。

大一C语言期末考试题

大一C语言期末考试题 悬赏分:40 |解决时间:2010-6-29 14:28 |提问者:345387547 1. 数组int a[3][5]; 共定义了_______________个元素。 2. 有float f= 3.1415927; 则printf(“%5.4f”, f );输出的结果是 _______________。 3. 下面程序的功能是:输出100以内(不包含100)能被3整除且个位数为6的所有整数,请填空。 main( ) { int i; for(i=1; _______________; i++) if (_______________) printf("%d", i); } 4. 设有“int x=2, y”说明,则逗号表达式“y=x+5,x+y”的值是 _______________ 5. 以下是使用指针,进行字符串复制的程序,请填空。 main() { char a[]= “Tsinghua University”, b[30], *p1,*p2; p1=a; p2=b; for(; *p1!= _______________; p1++, p2++) _______________=_______________; *p2= ______________; printf(“string a is:%s\n”,a); printf(“string b is:%s\n”,b); } 6. 下面程序用冒泡法对数组a进行降序排序,请填空。 main() { int a[5]={4,7,2,5,1}; int i,j,m; for(i=0;i<4;i++) for(j=0;j<_______________;j++) if( _______________< _______________ ) { m=a[ j]; a[ j]=a[ j+1]; a[ j+1]= m; } for(i=0;i<5;i++) printf("%d ",a[i]); } 7. 函数fun的功能是:使一个字符串按逆序存放,请填空。 void fun (char str[]) { char m; int i,j; for(i=0,j=strlen(str);i<_______________;i++,j--)

C语言试题及答案

一、单项选择题 1. 软件危机具有下列表现( d )。 I. 对软件开发成本估计不准确II. 软件产品的质量往往靠不住 III. 软件常常不可维护IV. 软件成本逐年上升 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 2. 软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。 A. 运行和维护阶段 B. 设计阶段 C. 代码实现阶段 D. 测试阶段 3. 下列属于软件的特点的是(D )。 A. 软件是一种逻辑实体,具有抽象性 ~ B. 软件在使用过程中没有磨损、老化的问题 C. 软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高 D. 以上都正确 4. 软件工程的出现是由于(D )。 A. 软件危机的出现 B. 计算机硬件技术的发展 C. 软件社会化的需要 D. 计算机软件技术的发展 5. 软件开发技术不包含( d )。 A. 软件开发方法学 B. 软件工程环境 C. 软件工具 D. 软件质量度度量 6. 软件工程的课程特点( D )。 【 I. 学科理论及其知识应用的多维性 II. 工程化 III. 浓厚的方法学色彩 IV. 实践性、指导性强 A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 7. 下列属于应用软件的是( b )。 I. 计算机辅助教学软件II. 软件测试工具 III. 办公自动化软件IV. 工程与科学计算软件

A. I、II和III B. I、III和IV C. II、III和IV D. 以上都正确 8. 需求分析阶段最重要的技术文档是( b )。 - A. 设计说明书 B. 需求规格说明书 C. 可行性分析报告 D. 用户手册 9. 以下关于数据流图的说法错误的是( c )。 A. 数据流图舍去了具体的物质,只剩下数据的流动、加工处理和存储 B. 数据流图是用作结构化分析的一种工具 C. 传统的数据流图中主要由加工、数据源点/终点、数据流、控制流、数据存储组成 D. 数据流图的绘制采用自上向下、逐层分解的方法 10. 数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( c )。 A. 数据库设计 B. 数据通信 C. 数据定义 D. 数据维护 11. 需求分析阶段的研究对象是( b )。 ¥ A. 系统分析员要求 B. 用户要求 C. 软硬件要求 D. 系统要求 12. 结构化方法的基本原则是( b )。 A. 模块化 B. 抽象与分解 C. 信息隐蔽 D. 逐步求精 13. 耦合度最高的是(b)耦合。 A. 环境 B. 内容 C. 控制 D. 数据 14. 内聚程度较低的是( a )内聚。 A. 偶然 B. 通讯 C. 顺序 D. 时间 15. 对一个程序来说,组成系统的模块数目( b ),则开发成本越小。 A. 越多 B. 越少 C. 顺序 D. 时间> 16. 画软件结构图时应注意调用关系只能是(B )。 A. 从下到上 B. 从上到下 C. 从左到右 D. 从右到左 17. 程序流程图中的箭头代表( b )。 A. 数据流 B. 控制流 C. 顺序流 D. 调用 18. 软件测试是软件质量保证的重要手段,下述( B )是软件测试的最基础环节。

C语言期末考试复习题及答案

C语言期末考试复习题及答案 一、选择题:下列各题A)、B)、C)、D)四个选项中只有一个是正 确的,请将正确的选项涂写在答案纸上。答在试卷上不得分。 (1)C语言规定:在一个源程序中,main函数的位置 D 。 A)必须在最后B)必须在系统调用的库函数的后面。 C)必须在最开始。。D)可以任意 (2) C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 A 。 A)必须为字母或下划线。。B)必须为下划线。 C)必须为字母D)可以是字母、数字和下划线中的任一种字符。 (3)下面四个选项中,均是正确的八进制数或十六进制数的选项是 B 。 A)-10 0x8f -011 B) 010 -0x11 0xf1 C) 0abc -017 0xc D) 0a12 -0x123 -0xa (4) C语言中int型数据在内存中占两个字节,则unsegned int取值范围是 A 。 A)0 ~ 65535 B)0 ~ 32767 C)-32767 ~ 32768 D)-32768 ~ 327687 (5) 若有定义:int a = 7; floa x = , y = ; 则表达式x + a % 3 * (int) (x + y) % 2/4 的值是 D 。 A) B) 0.00000 C) D) (6)已知ch是字符型变量,下面不正确的赋值语句是 B 。 A)ch = 5 + 9 ; B) ch= ' a + b '; C) ch = ' \ 0 '; D) ch= '7' + '6' ; (7) 设x , y和z是int型变量,且x = 3, y = 4 , z = 5 则下面表达式中值为0的

C语言试题及答案06612

大学C语言考试题库 第1章C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于C 源程序是高级语言程序,因此一定要在TC 软件中输入 B. 由C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有32 个关键字和9 种控制语句。

(2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在C 语言程序中允许出现的字符集是ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以/* 符号作为开始标记,以*/ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的C 语言字符型常量。 A. 'a' B. '\x41' C. '\101' D. "a" (3) 在C 语言中,字符型数据在计算机内存中,以字符的 C 形式存储。 A. 原码 B. 反码 C. ASCII 码 D. BCD码 (4) 字符串的结束标志是 C 。 A. 0 B. '0' C. '\0' D. "0" (5) 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为 B 。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 (6) 逻辑运算符中,运算优先级按从高到低依次为 D 。 A. &&,!,|| B. ||,&&,! C. &&,||,! D. !,&&,|| (7) 表达式!x||a==b 等效于 D 。 A. !((x||a)==b) B. !(x||y)==b C. !(x||(a==b)) D. (!x)||(a==b) (8) 设整型变量m,n,a,b,c,d 均为1,执行(m=a>b)&&(n=c>d)后, m,n 的值是 A 。 A. 0,0 B. 0,1 C. 1,0 D. 1,1

c语言试题及答案

c语言试题及答案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

1、以下正确的说法是(B) (A)用户若需要调用标准库函数,调用前必须重新定义 (B)用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C)系统根本不允许用户重新定义标准库函数 (D)用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是(A) (A)doublefun(intx,inty) (B)doublefun(intx;inty) (C)doublefun(intx,inty); (D)doublefun(intx,y); 3、以下正确的函数形式是(D) (A)doublefun(intx,inty){z=x+y;returnz;} (B)fun(intx,y){intz;returnz;} (C)fun(x,y){intx,y;doublez;z=x+y;returnz;} (D)doublefun(intx,inty){doublez;z=x+y;returnz;} 4、以下正确的说法是(A ) 在C语言中 (A)实参和与其对应的形参各占用独立的存储单元 (B)实参和与其对应的形参共占用一个存储单元

(C)只有当实参和与其对应的形参同名时才共占用存储单元 (D)形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是(A) 该函数 (A)没有返回值 (B)返回若干个系统默认值 (C)能返回一个用户所希望的函数值 (D)返回一个不确定的值 6、以下不正确的说法是(B) C语言规定 (A)实参可以是常量、变量和表达式 (B)形参可以是常量、变量和表达式 (C)实参可以为任意类型 (D)形参应与其对应的实参类型一致 7、以下正确的说法是(C) (A)定义函数时,形参的类型说明可以放在函数体内 (B)return后边的值不能为表达式 (C)如果函数值的类型与返回值类型不一致,以函数值类型为准 (D)如果形参与实参的类型不一致,以实参类型为准

2019年C语言期末考试题与答案

1、给定n个数据, 求最小值出现的位置(如果最小值出现多次,求出第一次出现的位置即可)。 最大值第三行i<=n五行k+1 2、编写程序求无理数e的值并输出。计算公式为: e=1+1/1!+1/2!+1/3!+......+1/n! 当1/n!<0.000001时e=2.718282。 3、求一批数中最大值和最小值的积。 4、某一正数的值保留2位小数,对第三位进行四舍 五入。 5、从键盘上输入任意实数x,求出其所对应的函数值。 z=(x-4)的二次幂(x>4) z=x的八次幂(x>-4) z=z=4/(x*(x+1))(x>-10) z=|x|+20(其他) 6、求出N×M整型数组的最大元素及其所在的行坐标 及列坐标(如果最大元素不唯一,选择位置在最前面 的一个)。例如:输入的数组为: 1 2 3 4 1 5 6 12 18 9 10 11 2 求出的最大数为18,行坐标为2,列坐标为1。 7、求一个n位自然数的各位数字的积。(n 是小于10的 自然数) 8、计算n门课程的平均值,计算结果作为函数值返回。 例如:若有5门课程的成绩是:92,76,69,58,88,则函数的值为76.599998。 9、求一批数中小于平均值的数的个数。 10、编写函数判断一个整数m的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。 .专业资料.

.专业资料. 11、请编一个函数void fun(int tt[M][N],int pp[N]), tt 指向一个M 行N 列的二维数组,求出二维数组每列 中最大元素,并依次放入pp 所指一维数组中。二维 数组中的数已在主函数中赋予。 12、编写函数fun 用比较法对主程序中用户输入的具有10 个数据的数组a 按由大到小排序,并在主程序中输出 排序结果。 13、编写main 程序调用函数fact 求解从m 个元素选n 个元 素的组合数的个数。计算公式是:组合数=m!/(n!.(m-n)!)。 要求:m 不能小于n ,否则应有容错处理。 说明:函数fact(x)的功能是求x!。 14、找出一批正整数中的最大的偶数。 15、实现两个整数的交换。 例如:给a 和b 分别输入:60和65,输入为: a=65 b=60 16、将字符串中的小写字母转换为对应的大写字母, 其它字符不变。 17、求一个四位数的各位数字的立方和。 18、求一组数中大于平均值的数的个数。 例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函 数值为3。 19、对任意输入的 x ,用下式计算并输出 y 的值。 5 x<10 y= 0 x=10 -5 x>10 20、求给定正整数m 以内的素数之和。 例如:当m=20时,函数值为77。 21、判断整数x 是否是同构数。若是同构数,函数返回1; 否则返回0。x 的值由主函数从键盘读入,要求不大

C语言试题及答案

第1章C语言概述习题1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成

C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 37 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以/* 符号作为开始标记,以 */ 符号作为结束标记。

c语言经典编程试题12例(带答案)

1、输入一个整数,判断该整数是不是素数。 解题思路: 什么是素数?大于1且除了1和它本身之外,没有可以将它除尽的数,这样的数便是素数。判断一个整数是不是素数,首先定义被除数从2开始,当除到比这个数小1的数时,依然没有除尽,则这个数就是素数,否则则不是素数。 #include void main() { int num,i,leap=0; int con=1; while(1) { printf("请输入一个大于0的整数: "); scanf("%d",&num); for(i=2;i1) printf("整数%d是一个素数。\n",num); else { leap=0; printf("整数%d不是一个素数。\n",num); } printf("\n是否继续?\n1、继续\n2、退出\n"); scanf("%d",&con); if(con!=1) break; } } 2、求100以内自然数中最大的能被17整除的数。 3、解题思路: (1)定义变量从0开始,且定义一个中间变量temp,如果被定义的变量可以除尽17,则把这个数赋值给temp,跳出循环后,temp的值便是100以内能被17整除的最大数。#include void main() { int i,temp,leap; for(i=0;i<=100;i++)

{ if(i%17==0) temp=i; } leap=temp/17; printf("100之内自然数中最大的能被17整除的数是: %d\n",temp); printf("被除数是%d\n",leap);} (2)定义变量从100开始,依次减一,如果遇到能整除17的数,则这个数便是100以内能整除17的最大数。 #include void main() { int i,temp,leap; for(i=100;i>=0;i--) if(i%17==0) break; printf("100之内自然数中最大的能被17整除的数是: %d\n",i); printf("被除数是%d\n",i/17); } 4、已知a,b,c都是1位整数,求当三位整数abc,cba的和为1333时a、b、c 的值。 解题思路: 利用三重for循环,当abc与cba的和为1333时便输出此时a,b,c的值。 #include void main() { int a,b,c; for(a=0;a<10;a++) for(b=0;b<10;b++) for(c=0;c<10;c++) if(a*100+b*10+c+a+b*10+c*100==1333) printf("a,b,c的值为:\na=%d\nb=%d\nc=%d\n",a,b,c); } 5、计算200~400之内不能被3整除的整数之和。 解题思路: 一个数能不能被3整除,则看它除以3之后的余数是否为0。如果为0,则能被整除,否则不能被整除。 #include void main() { int i,sum=0; for(i=200;i<=400;i++) if(i%3!=0) sum+=i;

相关文档