C语言练习试题带详解答案解析.doc

上传人:坚持 文档编号:3953914 上传时间:2019-09-01 格式:DOC 页数:22 大小:165.50KB
下载 相关 举报
C语言练习试题带详解答案解析.doc_第1页
第1页 / 共22页
C语言练习试题带详解答案解析.doc_第2页
第2页 / 共22页
C语言练习试题带详解答案解析.doc_第3页
第3页 / 共22页
C语言练习试题带详解答案解析.doc_第4页
第4页 / 共22页
C语言练习试题带详解答案解析.doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

1、 .WORD.格式. .专业资料.整理分享. 一单项选择题1 ( A )是构成 C语言程序的基本单位。A、函数 B、过程 C、子程序 D、子例程2C 语言程序从 C 开始执行。A) 程序中第一条可执行语句 B) 程序中第一个函数C) 程序中的 main函数 D) 包含文件中的第一个函数3、以下说法中正确的是( C ) 。A、C 语言程序总是从第一个定义的函数开始执行B、在 C语言程序中,要调用的函数必须在 main( )函数中定义C、C 语言程序总是从 main( )函数开始执行D、C 语言程序中的 main( )函数必须放在程序的开始部分4.下列关于 C语言的说法错误的是( B ) 。A)

2、C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。C) C程序的三种基本结构是顺序、选择、循环 D) C程序从 main函数开始执行5.下列正确的标识符是(C ) 。A.-a1 B.ai C.a2_i D.int t58题为相同类型题考点:标识符的命名规则(1) 只能由字母、数字、下划线构成(2) 数字不能作为标识符的开头(3) 关键字不能作为标识符选项 A中的“-” ,选项 B中“”与“”不满足(1) ;选项 D中的 int为关键字,不满足(3)6下列 C语言用户标识符中合法的是( B ) 。A)3ax B)x C)case D)-e2 E)union选项 A中的标识符以数

3、字开头不满足(2) ;选项 C,E 均为为关键字,不满足(3) ;选项 D中的“-”不满足(1) ;7下列四组选项中,正确的 C语言标识符是( C ) 。A) %x B) a+b C) a123 D) 123.WORD.格式. .专业资料.整理分享. 选项 A中的“%” ,选项 B中“+”不满足(1) ;选项 D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作 C语言程序中的标识符的是( A ) 。A、print _3d db8 aBc B、Iam one_half start$it 3paiC、str_1 Cpp pow while D、Pxq My-book line# Hi

4、s.age 选项 B中的“” , ”$” ,选项 D中“” , ”#”, ”.”, ”-”不满足(1) ;选项 C中的 while为关键字,不满足(3)9.C语言中的简单数据类型包括(D ) 。A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型C、整型、字符型、逻辑型 D、整型、实型、字符型10.在 C语言程序中,表达式 5%2的结果是 C 。A)2.5 B)2 C)1 D)3详见教材 P5253.%为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1; 5%(-2)=1;(-5)%2=-1;(-5)%(-2)=-1;/为求商运算符,该运算符能够对整型、字符、浮点等

5、类型的数据进行运算,5/2=211如果 int a=3,b=4;则条件表达式“aage D) (*p).age33.设有如下定义:struck sk.WORD.格式. .专业资料.整理分享. int a;float b;data;int *p;若要使 P指向 data中的 a域,正确的赋值语句是 C A) p= B) p=data.a; C) p= D)*p=data.a;34.设有以下说明语句:typedef struct stu int a;float b; stutype;则下面叙述中错误的是( D ) 。A、struct 是结构类型的关键字 B、struct stu 是用户定义的结构类

6、型 C、a 和 b都是结构成员名D、stutype 是用户定义的结构体变量名41. 在 C语言中,以 D 作为字符串结束标志A)n B) C) 0 D)0 42.下列数据中属于“字符串常量”的是( A ) 。A.“a” B.ABC C.abc0 D.a若干个字符构成字符串在 C语言中,用单引号标识字符;用双引号标识字符串选项 B,C,分别用和 标识字符串选项 D,标识字符。43.已知 char x=“hello“, y=h,e,a,b,e;, 则关于两个数组长度的正确描述是 B .A)相同 B)x 大于 y C)x小于 y D)以上答案都不对C语言中,字符串后面需要一个结束标志位0,通常系统会

7、自动添加。对一维数组初始化时可采用字符串的形式(例如本题数组 x) ,也可采用字符集合的形式(例如本题数组 y) 。在以字符串形式初始化时,数组 x不尽要存储字符串中的字符,还要存储字符串后的结束标志位,因此数组 x的长度为 6;在以字符集合形式初始化时,数组 y,仅存储集合中的元素,因此数组 y长度为 5.WORD.格式. .专业资料.整理分享. 4编程计算 13599 的值main() int i, sum = 0;i=1;while ( i void main()char c;printf(“input a character:“); c=getchar();if(c= A printf

8、(“input 10 integers:”);for(i=0;imain( ) int i, a20, s, count;s=count=0;for(i=0; iint main(void)int i, index, k, n, temp;/* 定义 1个数组 a,它有 10个整型元素*/printf(“Enter n: “);printf(“Enter %d integers: “, n);for(i = 0; i n; i+) scanf(“%d“, for(k = 0; k n-1; k+) /* 对 n个数排序 */index = k;for( ) if( ) index = i; p

9、rintf(“After sorted: “);for(i = 0; i n; i+) /* 输出 n个数组元素的值 */return 0; .WORD.格式. .专业资料.整理分享. 一、 程序改错一、 下面每个程序的划线处有语法或逻辑错误,请找出并改正,使其得到符合题意的执行结果。求 1 2 3 4 nmain() long int sum; / /若定义变量的语句有错误,常见考点有两个:(1)变量的类型,(2)在定义用于存放运算结果的变量时,一定要赋初值。一般赋值 0或者循环初值。int n,i=1;scanf(“%d“,n); /若 scanf语句有错误,常见考点有两个:(1)格式声明

10、符号要与后面欲赋值的变量的类型一致,此题%d 与 n的类型 int一致(详见 p69-78) ;(2)变量的前面要有地址符号while(in) / 循环条件用于控制循环的次数,若以 in 为循环条件,则意味着 i的终值为 n-1, 由于且 i初值为 1,因此一共能够循环 n-1次。比要求少了 1次,因此应改为 i=n 或者 in+1 sum=sum*i; / 若不为 sum赋初值,则此处无法计算 sum*i。i+;printf(“sum=%d“,sum); /若 printf语句有错误,常见考点有 1个:格式声明符号要与后面欲输出的变量的类型一致,此题%d 与 sum的类型 long int不

11、一致,应改为%ld(详见p69-78) ;sum应初始化 即加入 sum=1 第四行改为:scanf(“%d”,第六行改为:while(i=n)或者 while(in+1)第十行改为:printf(“sum=%ld“,sum);2求一个数组中最大值及其下标。main( ) int max,j,m;int a5;for(j=1;j=5;j+) / j=1为循环变量 j赋初值为 1,同时用 j作为数字元素的逻辑地址下标。因此输出的时候只能从 a1开始输出,无法输出 a0.因此应将 j赋初值 0,相应的循环条件改为 j5或者 j=4用于控制循环执行 5次scanf(“%d”,a); /若 scanf语句有错误,常见考点有两个:(1)格式声明符号要与后面欲赋值的变量的类型一致,此题%d 与 a的类型 int一致(详见 p69-78) ;(2)变量的前面要有地址符号for(j=1;j=5;j+) /修改思路与上一个 for语句同

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 参考答案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。