计算机二级C语言笔试400题
全国计算机等级考试二级C语言笔试试题及答案
老当益壮,宁移白首之心;穷且益坚,不坠青云之志。——唐·王勃
D) 4 (31) 有如下类定义:
class XX( int xx; public: XX(): xx(0) {cout<<' A';} XX( int n):xx ( n) {tout<<' B';} }; Class YY:public XX( Int yy; public: YY(): yy ( 0) (cout+yy;} YY ( int n ): XX (n+1 ), yy(n) (cout<<yy;} YY ( int m, int n):XX (m), yy (n) (cout<<yy;} }; 下列选项中,输出结果为 A0 的语句是 A) YY y1 (0,0); B) YY y2(1); C) YYy3(0); D) YYy4; (32) 有如下程序: #include<iostream> Using namespace std; class A( public: virtual void f () (cout+1;} void g () (cout<<2;} }; class B:public A( public: virtual void f () (cout<<3;} void g()(ecut<<4;} }; void show (A &a)(a.f();a.g( ) ; } int main()( B b; show(b); return 0; } 运行时的输出结果是 A) 12 B) 34 C) 14 D) 32 (33) 有如下程序: #include<iostream> using namespace std; class Pair( int m; int n; public: Pair ( int i, int j ): m(i), n(j) (} boot operator > ( pair p ) const;//须在类体外给出定义 ); int main () { Pair Al(3,4),p2(4,3); p3(4,5); Cout<< (pl>p2) << (P2>P1) << (p2>p3) << (p3>p2); return 0; } 运算符函数。operator〉的功能是比较两个 Pair 对象的大小,当左边对象大时,返回 true,否则 返 回 false。比较规则是首先比较两对象的 m 成员,m 大者为大;当 m 相等时比较 n, n 大者为大。程序输 出 0101, 下列对运算符重载函数的正确定义是 A ) bool Pair::operator> ( Pair p ) const {if (m!=p.m) return m>p.m; return n>p.n;}
计算机二级c语言试题及答案
计算机二级c语言试题及答案计算机二级C语言考试是中国计算机技术与软件专业技术资格(水平)考试中的一项,主要考察考生对C语言程序设计的基本掌握程度。
以下是一套模拟的计算机二级C语言试题及答案,供参考。
# 计算机二级C语言试题一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. classB. intC. voidD. include2. 以下哪个不是C语言标准输入输出库函数?A. printf()B. scanf()C. coutD. getchar()3. 在C语言中,以下哪个语句用于定义一个整型变量?A. int a;B. float a;C. double a;D. char a;4. 以下哪个表达式的结果不是整数?A. 3 / 2B. 3 % 2C. 3 + 2D. 3 - 25. 在C语言中,以下哪个是正确的字符串定义方式?A. string s = "Hello";B. char s[] = "Hello";C. char s = "Hello";D. char s = 'Hello';6. 下列哪个是C语言中的数组声明?A. int a[10];B. int a = 10;C. int a(10);D. int a = {10};7. 在C语言中,以下哪个是正确的函数定义?A. void myFunction() {}B. int myFunction;C. void myFunction() { return 0; }D. int myFunction() {}8. 以下哪个是C语言中的条件语句?A. ifB. whileC. forD. switch9. 在C语言中,以下哪个是正确的循环结构?A. for (int i = 0; i < 10; i++)B. while (i < 10)C. do { } while (i < 10)D. All of the above10. 下列哪个选项是C语言中的指针类型?A. intB. floatC. *intD. char*二、填空题(每空2分,共20分)1. 在C语言中,`printf("%d", x);` 用于输出一个整数变量 `x`,其中 `%d` 是______。
全国计算机二级C语言程序设计题-((-100%全中必过)
全国计算机二级C语言程序设计题-((-100%全中必过)目录题目一“回文”字符串 (3)题目二迭代法求给定多项式的值 (4)题目三迭代法求给定方程的根 (4)题目四二维数组三角元素操作1 (5)题目四二维数组三角元素操作2 (6)题目四二维数组三角元素操作3 (7)题目五二维数组元素求最值 (8)题目六二维数组周边元素1 (8)题目六二维数组周边元素2 (9)题目七二维数组转一维数组1 (10)题目七二维数组转一维数组2 (11)题目七二维数组转一维数组3 (12)题目七二维数组转一维数组4 (13)题目八结构体数组排序1 (14)题目八结构体数组排序2 (14)题目八结构体数组排序3 (15)题目八结构体数组排序4 (16)题目九结构体数组求最值1 (17)题目九结构体数组求最值2 (18)题目九结构体数组求最值3 (18)题目九结构体数组求最值4 (19)题目十结构体数组筛选 (19)题目十一结构体数组字符串比较 (20)题目十二矩阵操作1 (21)题目十二矩阵操作2 (22)题目十三类似素数判断1 (23)题目十三类似素数判断2 (23)题目十四累加累乘求和1 (23)题目十四累加累乘求和2 (24)题目十四累加累乘求和3 (24)题目十四累加累乘求和4 (25)题目十四累加累乘求和5 (25)题目十四累加累乘求和6 (26)题目十四累加累乘求和7 (27)题目十四累加累乘求和8 (27)题目十四累加累乘求和9 (28)题目十四累加累乘求和10 (28)题目十四累加累乘求和11 (29)题目十四累加累乘求和12 (29)题目十四累加累乘求和13 (30)题目十四累加累乘求和14 (30)题目十四累加累乘求和15 (31)题目十四累加累乘求和16 (31)题目十五链表1 (32)题目十五链表2 (33)题目十六删除整数位某数位 (34)题目十七删除字符串中指定字符1 (34)题目十七删除字符串中指定字符2 (35)题目十七删除字符串中指定字符3 (35)题目十七删除字符串中指定字符4 (36)题目十七删除字符串中指定字符5 (36)题目十七删除字符串中指定字符6 (37)题目十七删除字符串中指定字符7 (37)题目十七删除字符串中指定字符8 (38)题目十七删除字符串中指定字符9 (38)题目十七删除字符串中指定字符10 (39)题目十七删除字符串中指定字符11 (39)题目十七删除字符串中指定字符12 (40)题目十七删除字符串中指定字符13 (41)题目十七删除字符串中指定字符14 (41)题目十七删除字符串中指定字符15 (42)题目十七删除字符串中指定字符16 (43)题目十七删除字符串中指定字符17 (43)题目十七删除字符串中指定字符18 (44)题目十八数字字符串转整数1 (45)题目十八数字字符串转整数2 (45)题目十九素数判定1 (46)题目十九素数判定2 (46)题目十九素数判定3 (47)题目二十统计问题 (48)题目二十一小数位操作 (48)题目二十二一维数组或字符串排序1 (49)题目二十二一维数组或字符串排序2 (50)题目二十二一维数组元素的筛选1 (50)题目二十二一维数组元素的筛选2 (51)题目二十二一维数组元素的筛选3 (51)题目二十二一维数组元素的筛选4 (52)题目二十二一维数组元素的筛选5 (52)题目二十二一维数组元素的筛选6 (53)题目二十二一维数组元素的筛选7 (54)题目二十二一维数组元素的筛选8 (54)题目二十二一维数组元素的筛选9 (55)题目二十三一维数组元素筛选 (55)题目二十五一维数组最值求解1 (56)题目二十五一维数组最值求解2 (57)题目二十五一维数组最值求解3 (57)题目二十六移动问题1 (58)题目二十六移动问题2 (58)题目二十七整数合并1 (59)题目二十七整数合并2 (59)题目二十七整数合并3 (60)题目二十七整数合并4 (60)题目二十七整数合并5 (60)题目二十七整数合并6 (61)题目二十七整数合并7 (61)题目二十七整数合并8 (62)题目二十八字符串长度比较1 (62)题目二十八字符串长度比较2 (62)题目二十九字符串的逆置 (63)题目三十字符串计数 (64)题目三十一字符串连接1 (64)题目三十一字符串连接2 (65)题目三十一字符串连接3 (66)题目三十二字符串中指定字符查找 (66)题目三十三字母大小的判断及转换 (67)题目一“回文”字符串3.请编写函数fun,该函数的功能是:判断字符串是否为回文,若是,则函数返回1,主函数中输出"YES",否则返回0,主函数中输出"NO"。
c语言二级证考试真题及答案
c语言二级证考试真题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个函数?A. classB. functionC. voidD. int答案:D2. 下列哪个选项是合法的C语言变量名?A. 2variableB. variable-nameC. variable nameD. variable$name答案:B3. 若有定义 `int a[5] = {1, 2, 3, 4, 5};`,则 `a[0]` 的值是多少?A. 0B. 1C. 2D. 5答案:B4. 在C语言中,以下哪个运算符用于计算两个整数的乘积?A. %B. /C. *D. +答案:C5. 下列哪个选项是C语言中正确的注释方式?A. <!-- This is a comment -->B. // This is a commentC. /* This is a comment */D. # This is a comment答案:C6. 在C语言中,哪个函数用于计算并返回字符串的长度?A. strlen()B. length()C. size()D. strleng()答案:A7. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. +=D. ==答案:A8. 在C语言中,以下哪个关键字用于声明一个结构体?A. structB. unionC. classD. enum答案:A9. 若有定义 `int x = 10;`,则执行 `x += 5;` 后,`x` 的值是多少?A. 5B. 10C. 15D. 20答案:C10. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A二、程序填空题(每空2分,共20分)给定以下代码片段,请在空白处填入正确的代码。
```c#include <stdio.h>int main() {int a, b, sum;a = 5;b = 3;sum = a + b;printf("The sum is: %d\n", sum);return 0;}若要计算两个数的乘积并打印出来,需要修改的代码为:```c#include <stdio.h>int main() {int a, b, product;a = 5;b = 3;product = a * b;printf("The product is: %d\n", product);return 0;}```三、编程题(每题30分,共60分)1. 编写一个C语言程序,实现输入两个整数,输出它们的和。
全国计算机二级《C语言》考试题库与答案
全国计算机二级《C语言》考试题库与答案全国计算机二级《C语言》考试题库与答案在学习、工作中,我们都离不开试题,借助试题可以检验考试者是否已经具备获得某种资格的基本能力。
什么样的试题才能有效帮助到我们呢?以下是店铺为大家收集的全国计算机二级《C语言》考试题库与答案,欢迎大家分享。
全国计算机二级《C语言》考试题库与答案篇1(1)下列关于栈叙述正确的是( )。
A.栈顶元素最先能被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.栈底元素最先被删除(2)下列叙述中正确的是( )。
A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D.以上说法都不正确某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)( )。
A.3B.4C.6D.7软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是( ):A.学生成绩管理系统B.c语言编译程序C.UNIX操作系统D.数据库管理系统(5)结构化程序所要求的基本结构不包括( )。
A.顺序结构B.GOT0跳转C.选择(分支)结构D.重复(循环)结构(6)下面描述中错误的是( )。
A.系统总体结构图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据结构与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是( )。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言一个教师可讲授多门课程,一门课程可由多个教师讲授。
则实体教师和课程间的联系是( )。
A.1:1联系B.1:m联系C.m:1联系D.m:n联系(9)已知大写字母A的ASCIl码值是65,小写字母a的ASCIl码值是97。
以下不能将变量C中的大写字母转换为对应小写字母的语句是( )。
全国计算机等级考试二级C语言程序设计真题精选3(含答案)
全国计算机等级考试二级C语言程序设计真题精选3一、单项选择题1.下列关于C语言文件的叙述中正确的是()。
A.文件由一系列数据依次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文件或文本文件√D.文件由字符序列组成,其类型只能是文本文件解析:C语言将文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。
根据数据的组成形式,可将文件分为两种:①ASCII文件,又称文本(text)文件,它的每一个字节可放一个ASCII码,代表一个字符;②二进制文件,是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。
所以C文件就是一个字节流或一个二进制流。
2.有以下程序:#includ<stdio.h>main()inm=1,n=2,*p=&m,*q=&n,*r; r=p,p=q;q=r; printf("%d,%d,%d,%",m,n,*p,*q);}程序运行后的输出结果是()。
A.1,2,1,2B.1,2.2,1 √C.2,1,2,1D.2,1.1,2解析:本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。
3.有以下程序:#includ<stdio.h>#include<string.h>strucAina;chab[10];doublc;};strucf (struct);main()struca={1001,"ZhangDa",1098.0}; a=f(a);printf ("%d,%s,%6.1",a.a,a.b,a.c);}strucf(struct)t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;returt;}程序运行后的输出结果是()。
全国计算机等级考试二级C语言笔试题库
全国计算机等级考试二级C语言笔试题库第一套一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为A)PAD图B)N-S图C)结构图D)数据流图(2)结构化程序设计主要强调的是A)程序的规模B)程序的效率C)程序设计语言的先进性D)程序易读性(3)为了使模块尽可能独立,要求A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强(4)需求分析阶段的任务是确定A)软件开发方法B)软件开发工具C)软件开发费用D)软件系统功能(5)算法的有穷性是指A)算法程序的运行时间是有限的B)算法程序所处理的数据量是有限的C)算法程序的长度是有限的D)算法只能被有限的用户使用(6)对长度为n的线性表排序,在最坏情况下,比较次数不是n(n—1)/2的排序方法是A)快速排序B)冒泡排序C)直接插入排序D)堆排序(7)如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是A)e3,e1,e4,e2 B)e2,e4,e3,e1 C)e3,e4,e1,e2 D) 任意顺序(8)将E-R图转换到关系模式时,实体与联系都可以表示成A)属性B)关系C)键D)域(9)有三个关系R、S和T如下:RB C Da 0 k1b 1 n1SB C Df 3 h2a 0 k1n 2 x1TB C Da 0 k1由关系R和S通过运算得到关系T,则所使用的运算为A)并B)自然连接C)笛卡尔积D)交(10)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(11)以下叙述中正确的是A)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出(12)下列可用于C语言用户标识符的一组是A)void,define, WORD B)a3_3,_123,Car C)For,-abc, IF Case D)2a,DO, sizeof(13)以下选项中可作为C语言合法常量的是A)-80 B)—080 C)—8e1。
计算机二级c语言试题题库及答案
计算机二级c语言试题题库及答案一、选择题1. 在C语言中,下列哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 以下哪个函数用于将字符串从源地址复制到目标地址?A. strcpyB. strncpyC. strcatD. strcmp答案:A3. C语言中,用于声明一个变量的关键字是:A. varB. varibleC. letD. int答案:D二、填空题1. 在C语言中,定义一个整型数组的语句是:________。
答案:int array_name[size];2. 若一个函数的返回类型为void,则该函数______。
答案:不返回任何值3. 在C语言中,使用________关键字可以定义一个全局变量。
答案:extern三、简答题1. 简述C语言中指针的作用。
答案:指针在C语言中用于存储变量的内存地址,通过指针可以间接访问和操作变量的值。
2. 解释C语言中的递归函数。
答案:递归函数是指函数在其定义中调用自身的函数。
递归函数通常用于解决可以分解为相似子问题的复杂问题。
四、编程题1. 编写一个C语言程序,实现两个整数的加法。
```c#include <stdio.h>int add(int a, int b) {return a + b;}int main() {int num1, num2, sum;printf("Enter two numbers: ");scanf("%d %d", &num1, &num2);sum = add(num1, num2);printf("Sum of %d and %d is %d.\n", num1, num2, sum); return 0;}```2. 编写一个C语言程序,实现字符串反转。
```c#include <stdio.h>#include <string.h>void reverseString(char* str) {int length = strlen(str);for (int i = 0; i < length / 2; i++) { char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverseString(str);printf("Reversed string: %s\n", str); return 0;}```。
计算机国家二级考试c语言试题及答案
计算机国家二级考试c语言试题及答案C语言是一种计算机编程语言,被广泛应用于软件开发和系统编程领域。
对于计算机专业人员来说,掌握C语言的基础知识和能力非常重要。
而计算机国家二级考试C语言试题及答案提供了一系列练习和参考,帮助考生更好地备战考试。
以下是一些常见的C语言试题和对应的答案,供大家参考:1. 以下哪个选项是C语言的数据类型?a) Stringb) Doublec) Chard) Float答案:c) Char2. 在C语言中,用于声明变量的关键字是什么?答案:int、float、char等是用于声明变量的关键字。
3. 下列语句哪个是用于在屏幕上输出字符串的?a) printf()b) scanf()c) gets()d) puts()答案:a) printf()4. 下列哪个操作符用于两个变量之间的相等比较?a) ==b) !=c) >d) <答案:a) ==5. 下列哪个语句用于在C语言中实现循环?a) forb) whilec) do-whiled) all of the above答案:d) all of the above6. 下列语句中,哪个是用于定义一个函数的头部?a) main()b) {c) return 0;d) int add(int a, int b)答案:d) int add(int a, int b)7. 下列选项中,哪个函数用于从键盘输入整数?a) printf()b) scanf()c) gets()d) puts()答案:b) scanf()8. 在C语言中,以下哪个是正确的注释格式?a) //This is a commentb) /**This is a comment**/c) #This is a commentd) /*This is a comment*/答案:d) /*This is a comment*/9. 下面的循环语句在执行时会输出什么内容?```cfor(int i = 0; i < 5; i++) {printf("%d ", i);}```答案:输出:0 1 2 3 410. 下列选项中,哪个函数用于比较两个字符串是否相等?a) strcmp()b) strcpy()c) strcat()d) strlen()答案:a) strcmp()以上是一些常见的计算机国家二级考试C语言试题及答案。
计算机二级C语言笔试400题及答案
1、C语言程序的基本单位是____ A) 程序行 B) 语句 C) 函数 D) 字符、C、12、C语言程序的三种基本结构是____ A、顺序结构,选择结构,循环结构 B、递归结构,循环结构,转移结构 C、嵌套结构,递归结构,顺序结构 D、循环结构,转移结构,顺序结构、A、13、C语言规定,程序中各函数之间 A) 既允许直接递归调用也允许间接递归调用 B) 不允许直接递归调用也不允许间接递归调用 C) 允许直接递归调用不允许间接递归调用 D) 不允许直接递归调用允许间接递归调用、A、14、C语言中可处理的文件类型是( ) A) 文本文件和数据文件 B)文本文件和二进制文件 C) 数据文件和二进制文件 D)数据代码文件、B、15、C语言可执行程序的开始执行点是( ) A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数、C、16、C语言提供的合法的数据类型关键字是 A)double B) short C) integerD) char、B、17、C语言中,运算对象必须是整型数的运算符是 A) % B) \ C) %和\ D) * *、A、18、C语言中函数返回值的类型是由( )决定。
A) return语句中的表达式类型 B) 调用函数的主调函数类型 C) 调用函数时临时 D) 定义函数时所指定的函数类型、D、19、C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为_____。
A、该数组的长度。
B、该数组的元素个数。
C、该数组中各元素的值。
D、该数组的首地址。
、D、110、C语言中数组下标的下限是________。
A、1 B、0 C、视具体情况 D、无固定下限、B、111、C语言中提供的合法关键字是____ A、swith B、cher C、case D、default、D、112、C语言中文件的存取方式是________。
计算机二级c语言试题及答案
计算机二级c语言试题及答案1. 题目一:请编写一个程序,实现两个整数的互换(不使用第三个变量)。
答案一:```c#include <stdio.h>void swap(int *a, int *b) {*a = *a + *b; // a = a + b*b = *a - *b; // b = a + b - b = a*a = *a - *b; // a = a + b - a = b}int main() {int num1, num2;printf("请输入两个整数:\n");scanf("%d%d", &num1, &num2);printf("交换前的两个数为:%d %d\n", num1, num2);swap(&num1, &num2);printf("交换后的两个数为:%d %d\n", num1, num2);return 0;}```2. 题目二:编写一个程序,计算并输出 100 以内的所有质数。
答案二:```c#include <stdio.h>int isPrime(int num) {int i;for (i = 2; i < num; i++) {if (num % i == 0) {return 0; // 不是质数}}return 1; // 是质数}int main() {int i;printf("100 以内的质数有:\n");for (i = 2; i <= 100; i++) {if (isPrime(i)) {printf("%d ", i);}}return 0;}```3. 题目三:请编写一个程序,判断某年份是否为闰年。
答案三:```c#include <stdio.h>int isLeapYear(int year) {if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { return 1; // 是闰年} else {return 0; // 不是闰年}}int main() {int year;printf("请输入一个年份:\n");scanf("%d", &year);if (isLeapYear(year)) {printf("%d年是闰年。
计算机等级考试二级C语言超级经典400道题目(5)
计算机等级考试二级C语言超级经典400道题目(5)201、以下程序的输出的结果是 int x=3; main() { int i; for (i=1;i、C、2202、以下程序的输出结果是#include main() { int i=0,a=0; while(i、B、2203、以下程序的输出结果是 int f() { static int i=0; int s=1; s+=i; i++; return s; } main() { int i,a=0; for(i=0;i、D、2204、请读程序: static int a[]={1,3,5,7,9}; int y,x,*p; y=1; p=&a[1]; for(x=0;x、D、2205、下面函数的功能是 A) 求字符串的长度 B) 比较两个字符串的大小C) 将字符串x复制到字符串y D) 将字符串x连接到字符串y后面 int funl(char * x) { char * y=x; while(*y++); return(y-x-1);}、A、2206、下面函数的功能是sss(s, t) char *s, *t; { while((*s)&&(*t)&&(*t++== *s++)); return(*s-*t); } A) 求字符串的长度 B) 比较两个字符串的大小 C) 将字符串s复制到字符串t中 D) 将字符串s接续到字符串t中、B、2207、下面能正确进行字符串赋值操作的语句是 A char s[5]={"ABCDE"}; B char s[5] ={'a','b' ,'c','d',''e'}; C char *s;s="ABCDEF"' D char *s; scasnf("%s",s);、C、2208、下述对C语言字符数组的描术中错误的是 A) 字符数组可以存放字符串B) 字符数组中的字符串可以整体输入、输出C) 可以在赋值语句中通过赋值运算符"="对字符数组整体赋值D) 不可以用关系运算符对字符数组中的字符串进行比较、C、2209、下面的程序 A) 输出的是1 B) 输出的是1和-2 C) 输出的是3和0 D) 是死循环main() { int x=3; do { printf("%d\n",X-=2); }while(!(--x));}、B、2210、下面的程序执行后,文件testt、t中的内容是#include void fun(char *fname、,char *st) { FILE *myf; int i;myf=fopen(fname,"w" ); for(i=0;i、A、2211、下面各语句行中,能正是行赋字符串操作的语句行是A)char st[4][5]={“ABCDE”}; B)char s[5]={'A','B','C','D','E'};C)char *s;s=“ABCDE”; D)char *s;scanf(“%S”,S);、C、2212、下面程序的输出是____ int w=3; main() { int w=10; printf("%d\n",fun(5)*w); } fun(int k) { if(k==0) return w; return(fun(k-1)*k); } A)360 B)3600 C)1080 D)1200、B、2 213、下面程序的输出是____ main() { char *a="12134211"; int v1=0,v2=0,v3=0,v4=0,k; for(k=0;s[k];k++) switch(s[k]) { default:v4++; case '1': v1++; case '3': v3++; case '2': v2++; } printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); } A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1 C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v3=8,v4=8、C、2 214、下面程序的输出是main() { int x=3,y=6,a=0; while(x++!=(y+=o1)) { a+o=1; if(y #include main() { char ss[10]="12345"; strcat(ss,"6789"); gets(ss);printf("%s\n",ss); } A) ABC B) ABC9 C) 123456ABC D) ABC456789、D、2215、下面程序的输出是 A) 0 1 2 3 B) 0 4 0 10 C) 0 4 5 15 D) 1 4 5 15 main() { enum team {my,your=4,his,her=his+10}; printf("%d %d %d %d\n",my,your,his,her);}、C、2216、下面程序的输出是 A) 0 B) 1 C) 3 D) 不确定的值 main() { int x=10,y=3; printf("%d\n",y=x/y);}、C、2217、下面程序的输出是 A) -1 B) 0 C) 1 D) 不确定的值 main() { int x=100, a=10, b=20, ok1=5, ok2=0; if(a、A、2218、下面程序的输出是A) 1 B) 2 C) 7 D) 10 int m=13; int fun2(int x, int y) { int m=3; return(x*y-m); } main() { int a=7, b=5; printf("%d\n",fun2(a,b)/m);}、B、2219、下面程序的输出是A) 100 B) 160 C) 120 D) 64 main() { char x=040; printf("%d\n",x=x<<1);}、D、2220、下面程序的输出是 A) 17 B) 18 C) 23 D) 24 main() { intx=023; printf(%d\n",--x);}、B、2221、下面程序的输出是A) 23 B) 26 C) 33 D) 36 int aa[3][3]={{2},{4},{6}}; main() { int i, * p=&aa[0][0]; for(i=0; i、A、2 222、下面程序的输出是A) 3 B) 4 C) 1 D) 2 main() { int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf("%d\n",*(p+2));}、A、2 223、下面程序的输出是 A) 3 B) 4 C) 6 D) 9 fun3(int x) static int a=3; a+=x; return(a);} main() { int k=2, m=1, n; n=fun3(k); n=fun3(m); printf("%d\n",n);}、C、2224、下面程序的输出是 A) 60 B) 68 C) 99 D) 108 main() { int a[3][4]={ 1,3,5,7,9,11,13,15,17,19,21,23}; int ( *p)[4]=a,i,j,k=0; for(i=0; i、A、2225、下面程序的输出是 A) 741 B) 852 C) 963 D) 875421 main() { int y=9; for( ; y>0; y--) { if(y%3==0) { printf("%d", --y);continue;} }、 }、B、2226、下面程序的输出是 A) ABCD B) A C) D D) ABCD BCD B C ABC CD C B AB D D A A char s[]="ABCD"; main() { char *p; for(p=s; p、A、2238、请读程序: int x=10; int y=x++; printf("%d,%d",(x++,y),y++); 则上面程序的输出结果是____ A:11,10 B:11,11 C:10,10 D:10,11、A、2239、下列程序的运行结果是A) a=%2,b=%5 B) a=2,b=5 C) a=d, b=d D) a=%d,b=%d #include main() { int a=2,c=5; printf("a=%d,b=%d\n",a,c); }、B、2240、下列程序的输出结果是main( ) { char ch[2][5]={"6934,"8254"},*p[2]; int i,j,s=0; for(i=0;i'\0'&&p[i][j]<='9';j+=2) s=10*s+p[i][j]-'0'; printf("%d\n",s); A) 6385 B) 69825 C) 63825 D) 693825、A、2 241、请读程序: main( ) {printf("%d",null);} 则上面程序的输出结果是____ A:0 B:变量无定义 C:-1 D:1、B、2242、设有以下宏定义: #define N 3 #define Y(n) ( (N+1)*n) 则执行语句:z=2 * (N+Y(5+1));后,z的值为 A) 出错 B) 42 C) 48 D) 54、C、2243、设有以下函数: f ( int a) { int b=0; static int c = 3; b++; c++; return(a+b+c); } 如果在下面的程序中调用该函数,则输出结果是 main() { int a = 2, i; for(i=0;i、A、2244、设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是 printf("%d,%d\n",x--,--y); A) 10,3 B) 9、3 C) 9、2 D)10、2、D、2245、设有如下一段程序: int *var,ab; ab=100 var=&ab; ab=*var+10; 执行上面的程序后,ab的值为 A) 120 B) 110 C) 100 D) 90、B、2246、设有如下的函数 ggg(x) float x; { printf("\n%d",x*x);} 则函数的类型 A) 与参数x的类型相同 B) 是void C) 是int D) 无法确定、C、2247、设有static char str[ ]="Beijing"; 则执行printf("%d\n", strlen(strcpy(str,"China"))); 后的输出结果为 A) 5 B) 7 C) 12 D) 14、A、2248、设 int x=1, y=1; 表达式(!x||y--)的值是 A) 0 B) 1 C) 2 D) -1、B、2249、若有以下说明: int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g; 则数值为4的表达式是 A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c]、D、2250、若有以下说明: int w[3][4]={{0,1},{2,4},{5,8}}; int(*p)[4]=w; 则数值为4的表达式是A) *w[1]+1 B) p++,*(p+1) C) w[2][2] D) p[1][1]、D、2。
计算机等级考试二级C语言超级经典例题及答案
计算机等级考试二级C语言超级经典400道题及答案1、C语言程序的基本单位是____ A) 程序行 B) 语句 C) 函数 D) 字符、C、12、C语言程序的三种基本结构是____ A、顺序结构,选择结构,循环结构 B、递归结构,循环结构,转移结构 C、嵌套结构,递归结构,顺序结构 D、循环结构,转移结构,顺序结构、A、13、C语言规定,程序中各函数之间 A) 既允许直接递归调用也允许间接递归调用 B) 不允许直接递归调用也不允许间接递归调用 C) 允许直接递归调用不允许间接递归调用 D) 不允许直接递归调用允许间接递归调用、A、14、C语言中可处理的文件类型是( ) A) 文本文件和数据文件 B)文本文件和二进制文件 C) 数据文件和二进制文件 D)数据代码文件、B、15、C语言可执行程序的开始执行点是( ) A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数、C、16、C语言提供的合法的数据类型关键字是 A)double B) short C) integer D) char、B、17、C语言中,运算对象必须是整型数的运算符是 A) % B) \ C) %和\ D) * *、A、18、C语言中函数返回值的类型是由( )决定。
A) return语句中的表达式类型 B) 调用函数的主调函数类型 C) 调用函数时临时 D) 定义函数时所指定的函数类型、D、19、C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为_____。
A、该数组的长度。
B、该数组的元素个数。
C、该数组中各元素的值。
D、该数组的首地址。
、D、110、C语言中数组下标的下限是________。
A、1 B、0 C、视具体情况 D、无固定下限、B、111、C语言中提供的合法关键字是____ A、swith B、cher C、case D、default、D、112、C语言中文件的存取方式是________。
计算机等级考试二级c语言习题答案
计算机等级考试二级c语言习题答案一、选择题1. 在C语言中,下列哪个选项是合法的标识符?A. 2variableB. variable2C. variable!D. variable$答案:B2. C语言中,一个整型变量占用的字节数是多少?A. 1B. 2C. 4D. 8答案:C3. 下列哪个选项不是C语言中的控制结构?A. 顺序结构B. 选择结构C. 循环结构D. 递归结构答案:D4. 在C语言中,字符'A'的ASCII码值是多少?A. 65B. 97C. 66D. 98答案:A5. 下列哪个选项是C语言中的合法整型常量?A. 0x1AB. 1.2E3C. 0177D. 0b1010答案:C二、填空题1. 在C语言中,用于定义变量的关键字是________。
答案:int2. 若有定义 int a=5, b=6;,则表达式 a++ + b 的值是________。
答案:113. 在C语言中,用于输出的函数是________。
答案:printf4. 若有定义 int a=10;,则执行语句 a %= 3; 后,变量 a 的值是________。
答案:15. 在C语言中,用于计算两个浮点数之差的绝对值的函数是________。
答案:fabs三、编程题1. 编写一个程序,计算并输出以下数列的前10项之和:1, 1/2, 1/3, 1/4, ...请给出完整的程序代码。
```c#include <stdio.h>int main() {double sum = 0.0;for (int i = 1; i <= 10; i++) {sum += 1.0 / i;}printf("The sum of the series is: %f\n", sum);return 0;}```2. 编写一个程序,实现对字符串的逆序输出。
```c#include <stdio.h>#include <string.h>int main() {char str[100];printf("Enter a string: ");scanf("%s", str);int len = strlen(str);for (int i = len - 1; i >= 0; i--) {printf("%c", str[i]);}printf("\n");return 0;}```结束语:以上是计算机等级考试二级C语言的部分习题及答案,希望对您的学习和备考有所帮助。
历年全国计算机等级考试二级C语言笔试选择真题及答案
⼀、下列各题A、B、C、D四个选项中,只有⼀个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是A.栈是“先进先出”的线性表B.队列是“先进先出”的线性表C.循环队列是⾮线性结构D.有序性表既可以采⽤顺序存储结构,也可以采⽤链式存储结构(2)⽀持⼦程序调⽤的数据结构是A.栈B.树C.队列D.⼆叉树(3)某⼆叉树有5个度为2的结点,则该⼆叉树中的叶⼦结点数是A.10B.8C.6D.4(4)下列排序⽅法中,最坏情况下⽐较次数最少的是A.冒泡排序B.简单选择排序C.直接插⼊排序D.堆排序(5)软件按功能可以分为:应⽤软件、系统软件和⽀撑软件(或⼯具软件)。
下⾯属于应⽤软件的是A.编译软件B.操作系统C.教务管理系统D.汇编程序(6)下⾯叙述中错误的是A.软件测试的⽬的是发现错误并改正错误B.对被调试的程序进⾏“错误定位”是程序调试的必要步骤C.程序调试通常也称为DebugD.软件测试应严格执⾏测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独⽴性度量的两个标准。
下列叙述中正确的是A.提⾼耦合性降低内聚性有利于提⾼模块的独⽴性B.降低耦合性提⾼内聚性有利于提⾼模块的独⽴性C.耦合性是指⼀个模块内部各个元素间彼此结合的紧密程度D.内聚性是指模块间互相连接的紧密程度(8)数据库应⽤系统中的核⼼问题是A.数据库设计B.数据库系统设计C.数据库维护D.数据库管理员培训(9)有两个关系R,S如下:RABCa32b01c21SABa3b0c2由关系R通过运算得到关系S,则所使⽤的运算为A.选择B.投影C.插⼊D.连接(10)将E-R图转换为关系模式时,实体和联系都可以表⽰为A.属性B.键C.关系D.域(11)以下选项中合法的标识符是A.1-1B.1—1C.-11D.1--(12)若函数中有定义语句:int k;,则A.系统将⾃动给k赋初值0B.这时k中值⽆定义C.系统将⾃动给k赋初值-1D.这时k中⽆任何值(13)以下选项中,能⽤作数据常量的是A.0115B.0118C.1.5e1.5D.115L(14)设有定义:int x=2;,以下表达式中,值不为6的是A.x*=x+1B.x++,2*xC.x*=(1+x)D.2*x,x+=2(15)程序段:int x=12;double y=3.141593; printf(“%d%8.6f”,x,y);的输出结果是A.123.141593B.123.141593C.12,3.141593D.123.141593(16)若有定义语句:double x,y,*px,*py,执⾏了px=&x, py=&y;之后,正确的输⼊语句是A.scanf(“%f%f”,x,y);B.scanf(“%f%f”,&x,&y);C.scanf(“%lf%le”,px,py);D.scanf(“%lf%lf”,x,y);(17)以下是if语句的基本形式:if(表达式)语句其中“表达式”A.必须是逻辑表达式B.必须是关系表达式C.必须是逻辑表达式或关系表达式D.可以是任意合法的表达式(18)有以下程序#includemain(){int x;scanf(“%d”,&x);if(x<=3); elseif(x!=10)printf(“%d\n”,x);}程序运⾏时,输⼊的值在哪个范围才会有输出结果A.不等于10的整数B.⼤于3且不等于10的整数C.⼤于3或等于10的整数D.⼩于3的整数(19)有以下程序#includeMain(){int a=1,b=2,c=3,d=0;if(a= =1 &&b++= =2)if(b!=2 || c--!=3)printf(“%d,%d,%d\n”,a,b,C.;else printf(“%d,%d,%d\n”,a,b,C.;else printf(“%d,%d,%d\n”,a,b,C.;}程序运⾏后的输出结果是A.1,2,3B.1,3,2C.1,3,3D.3,2,1(20)以下程序中的变量已正确定义for(i=0;i<4;i++,i++for(k=1;k<3;k++);printf(*”);程序段的输出结果是A.********B.****C.**D.*(21)有以下程序#includemain(){char*s=(“ABC.;do{printf(“%d”,*s%10);s++;}while(*s);}注意,字母A的ASCII码值为65。
全国计算机等级考试二级笔试样卷C语言程序设计含答案
全国计算机等级考试二级笔试样卷C语言程序设计【打印】【字体:大中小】【关闭】一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列选项中不符合良好程序设计风格的是A)源程序要文档化B)数据说明的次序要规化C)避免滥用goto语句 D)模块设计要保证高耦合、高聚(2)从工程管理角度,软件设计一般分为两步完成,它们是A)概要设计与详细设计B)数据设计与接口设计C)软件结构设计与数据设计D)过程设计与数据设计(3)下列选项中不属于软件生命周期开发阶段任务的是A)软件测试B)概要设计C)软件维护D)详细设计(4)在数据库系统中,用户所见的数据模式为A)概念模式B)外模式C)模式D)物理模式(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和A)编码设计B)测试阶段C)运行阶段D)物理设计(6)设有如下三个关系表R S T下列操作中正确的是A)T=R∩S B)T=R∪SC)T=R×S D)T=R/S(7)下列叙述中正确的是A)一个算法的空间复杂度大,则其时间复杂度也必定大B)一个算法的空间复杂度大,则其时间复杂度必定小C)一个算法的时间复杂度大,则其空间复杂度必定小D)上述三种说法都不对(8)在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为A)63 B)64 C)6 D)7(9)数据库技术的根本目标是要解决数据的A)存储问题B)共享问题C)安全问题D)保护问题(10)对下列二叉树进行中序遍历的结果是A)ACBDFEG B)ACBDFGE C)ABDCGEF D)FCADBEG(11)下列叙述中错误的是A)一个C语言程序只能实现一种算法B)C程序可以由多个程序文件组成C)C程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在(12)下列叙述中正确的是A)每个C程序文件中都必须要有一个main()函数B)在C程序中main()函数的位置是固定的C)C程序中所有函数之间都可以相互调用,与函数所在位置无关D)在C程序的函数中不能定义另一个函数(13)下列定义变量的语句中错误的是A)int _int; B)double int_; C)char For; D)float US$; (14)若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是A)++x,y=x-- B)x+1=y C)x=x+10=x+y D)double(x)/10(15)以下关于逻辑运算符两侧运算对象的叙述中正确的是A)只能是整数0或1 B)只能是整数0或非0整数C)可以是结构体类型的数据D)可以是任意合法的表达式(16)若有定义int x,y; 并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++) :(y++)中的条件表达式(x-y) 等价的是A)(x-y>0) B)(x-y<0) C)(x-y<0||x-y>0) D)(x-y==0)(17)有以下程序main(){ int x, y, z;x=y=1;z=x++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序运行后的输出结果是A)2,3,3 B)2,3,2 C)2,3,1 D)2,2,1(18)设有定义:int a; float b; 执行scanf("%2d%f",&a,&b); 语句时,若从键盘输入876 543.0<回车>,a和b的值分别是A)876和543.000000 B)87和6.000000 C)87和543.000000 D)76和543.000000(19)有以下程序main(){ int a=0, b=0;a=10; /* 给a赋值b=20; 给b赋值*/printf("a+b=%d\n",a+b); /* 输出计算结果*/}程序运行后的输出结果是A)a+b=10 B)a+b=30 C)30 D)出错(20)在嵌套使用if语句时,C语言规定else总是A)和之前与其具有相同缩进位置的if配对B)和之前与其最近的if配对C)和之前与其最近的且不带else的if配对D)和之前的第一个if配对(21)下列叙述中正确的是A)break语句只能用于switch语句B)在switch语句中必须使用defaultC)break语句必须与switch语句中的case配对使用D)在switch语句中,不一定使用break语句(22)有以下程序main(){ int k=5;while(--k) printf("%d",k -= 3);printf("\n");}执行后的输出结果是A)1 B)2 C)4 D)死循环(23)有以下程序main(){ int i;for(i=1; i<=40; i++){ if(i++%5==0)if(++i%8==0) printf("%d ",i);}printf("\n");}执行后的输出结果是A)5 B)24 C)32 D)40(24)以下选项中,值为1的表达式是A)1 –'0' B)1 - '\0' C)'1' -0 D)'\0' - '0'(25)有以下程序fun(int x, int y){ return (x+y); }main(){ int a=1, b=2, c=3, sum;sum=fun((a++,b++,a+b),c++);printf("%d\n",sum);}执行后的输出结果是A)6 B)7 C)8 D)9(26)有以下程序main(){ char s[]="abcde";s+=2;printf("%d\n",s[0]);}执行后的结果是A)输出字符a的ASCII码B)输出字符c的ASCII码C)输出字符c D)程序出错(27)有以下程序fun(int x, int y){ static int m=0, i=2;i+=m+1; m=i+x+y; return m;main(){ int j=1, m=1, k;k=fun(j,m); printf("%d,",k);k=fun(j,m); printf("%d\n",k);}执行后的输出结果是A)5, 5 B)5, 11 C)11, 11 D)11, 5(28)有以下程序fun(int x){ int p;if(x==0||x==1) return(3);p=x-fun(x-2);return p;main(){ printf("%d\n",fun(7)); }执行后的输出结果是A)7 B)3 C)2 D)0(29)在16位编译系统上,若有定义int a[]={10,20,30}, *p=&a;,当执行p++;后,下列说法错误的是A)p向高地址移了一个字节B)p向高地址移了一个存储单元C)p向高地址移了两个字节D)p与a+1等价(30)有以下程序main(){ int a=1, b=3, c=5;int *p1=&a, *p2=&b, *p=&c;*p =*p1*(*p2);printf("%d\n",c);}执行后的输出结果是A)1 B)2 C)3 D)4(31)若有定义:int w[3][5]; ,则以下不能正确表示该数组元素的表达式是A)*(*w+3) B)*(w+1)[4] C)*(*(w+1)) D)*(&w[0][0]+1)(32)若有以下函数首部int fun(double x[10], int *n)则下面针对此函数的函数声明语句中正确的是A)int fun(double x, int *n); B)int fun(double , int );C)int fun(double *x, int n); D)int fun(double *, int *);(33)有以下程序void change(int k[ ]){ k[0]=k[5]; }main(){ int x[10]={1,2,3,4,5,6,7,8,9,10},n=0;while( n<=4 ) { change( &x[n]) ; n++; }for(n=0; n<5; n++) printf("%d ",x[n]);printf("\n");}程序运行后输出的结果是A)6 7 8 9 10 B)1 3 5 7 9 C)1 2 3 4 5 D)6 2 3 4 5(34)有以下程序main(){ int x[3][2]={0}, i;for(i=0; i<3; i++) scanf("%d",x[i]);printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);}若运行时输入:2 4 6<回车>,则输出结果为A)2 0 0 B)2 0 4 C)2 4 0 D)2 4 6(35)有以下程序int add( int a,int b){ return (a+b); }main(){ int k, (*f)(), a=5,b=10;f=add;…}则以下函数调用语句错误的是A)k=(*f)(a,b); B)k=add(a,b);C)k= *f(a,b); D)k=f(a,b);(36)有以下程序#includemain( int argc, char *argv[ ]){ int i=1,n=0;while (iprintf("%d\n",n);}该程序生成的可执行文件名为:proc.exe。
计算机二级c语言笔试题库
计算机二级c语言笔试题库第一题:请编写一个C语言程序,计算并输出1到100之间所有偶数的和。
解答:```c#include <stdio.h>int main() {int sum = 0;for (int i = 2; i <= 100; i += 2) {sum += i;}printf("1到100之间所有偶数的和为:%d\n", sum);return 0;}```第二题:请编写一个C语言程序,判断一个输入的整数是否为素数(质数),如果是素数则输出"Yes",否则输出"No"。
解答:```c#include <stdio.h>int main() {int num, i, isPrime = 1;printf("请输入一个整数:");scanf("%d", &num);for(i = 2; i <= num / 2; ++i) {if(num % i == 0) {isPrime = 0;break;}}if (isPrime)printf("%d是素数\n", num); elseprintf("%d不是素数\n", num); return 0;}```第三题:请编写一个C语言程序,将一个字符串中的大写字母转换为小写字母,并输出转换后的结果。
解答:```c#include <stdio.h>void convertToLowercase(char *str) {while(*str) {if(*str >= 'A' && *str <= 'Z')*str += 32;str++;}}int main() {char str[100];printf("请输入一个字符串:");fgets(str, sizeof(str), stdin);convertToLowercase(str);printf("转换后的字符串为:%s\n", str);return 0;}```以上是三道计算机二级C语言笔试题的题目和解答,希望对您有帮助。
计算机等级考试二级C语言笔试经典习题301-400
计算机等级考试⼆级C语⾔笔试经典习题301-400 301、变量a所占内存字节数是 A) 4 B) 5 C) 6 D) 8 union U { char st[4]; int i; long l; }; struct A { int c; union U u; }a;、C、3 302、标准函数 fgets(s, n, f) 的功能是 A) 从⽂件f中读取长度为n的字符串存⼊指针s所指的内存 B) 从⽂件f中读取长度不超过n-1的字符串存⼊指针s所指的内存 C) 从⽂件f中读取n个字符串存⼊指针s所指的内存 D) 从⽂件f中读取长度为n-1的字符串存⼊指针s所指的内存、B、3 303、rewind函数的作⽤是________。
A、重新打开⽂件 B、使⽂件位置指针重新回到⽂件末 C、使⽂件位置指针重新回到⽂件的开始 D、返回⽂件长度值、C、3 304、当____,可以不指定数组长度。
(A) 对静态数组赋初值 (B) 对动态数组赋初值 (C) 只给⼀部分元素赋值 (D) 对全部数组元素赋初值、D、3 305、以下程序的输出结果是____ i=5; i=++i*4+2; A、5 B、6 C、23 D、26、D、3 306、以下程序的输出结果是____ i=5; i=i++*4+2; A、5 B、6 C、23 D、26、C、3 307、以下程序的输出结果是____ main() {int x,y,z; x=y=z=0; ++x||++y||++z; printf(“%d,%d,%d\n”,x,y,z); } A、1,1,1 B、1,0,0 C、1,1,0 D、1,0,1、B、3 308、C语⾔中函数能否嵌套调⽤和递归调⽤? A、⼆者均不可 B、前者可,后者不可 C、前者不可,后者可 D、⼆者均可、D、3 309、C语⾔联合类型在任何给定时刻_____。
A、所有成员⼀直驻留在结构中。
B、只能有⼀个成员驻留在结构中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、C语言程序的基本单位是(C)A) 程序行B) 语句C) 函数D) 字符、2、C语言程序的三种基本结构是(A) A、顺序结构,选择结构,循环结构B、递归结构,循环结构,转移结构C、嵌套结构,递归结构,顺序结构D、循环结构,转移结构,顺序结构、3、C语言规定,程序中各函数之间(A)A) 既允许直接递归调用也允许间接递归调用B) 不允许直接递归调用也不允许间接递归调用C) 允许直接递归调用不允许间接递归调用D) 不允许直接递归调用允许间接递归调用4、C语言中可处理的文件类型是(B) A) 文本文件和数据文件B)文本文件和二进制文件C) 数据文件和二进制文件D)数据代码文件5、C语言可执行程序的开始执行点是(C ) A) 程序中第一条可执行语句B) 程序中第一个函数C) 程序中的main函数D) 包含文件中的第一个函数6、C语言提供的合法的数据类型关键字是(B) A)double B) short C) integer D) char7、C语言中,运算对象必须是整型数的运算符是(A)A) % B) \ C) %和\ D) * *8、C语言中函数返回值的类型是由( D)决定A) return语句中的表达式类型B) 调用函数的主调函数类型C)调用函数时临时D)定义函数时所指定的函数类型9、C语言中数组名作为参数传递给函数,作为实在参数的数组名被处理为(D)A、该数组的长度。
B、该数组的元素个数。
C、该数组中各元素的值。
D、该数组的首地址。
10、C语言中数组下标的下限是(B) A、1 B、0 C、视具体情况D、无固定下ㄊ㌰൦阊11、C语言中提供的合法关键字是(D)A、swith B、cher C、case D、default12、C语言中文件的存取方式是(C) A、顺序存取B、随机存取C、顺序存取、随机存取均可D、顺序存取、随机存取均不可13、C语言中最简单的数据类型包括(B) A) 整型、实型、逻辑型B) 整型、实型、字符型C) 整型、字符型、逻辑型D) 整型、实型、逻辑型、字符型14、sizeof(float)是(C ) A) 一种函数调用B) 一个不合法的表示形式C) 一个整型表达式D) 一个浮点表达式15、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B) 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);16、表达式:10!=9的值是(D) A) true B) 非零值C) 0 D)17、表示关系x<=y<=z的c语言表达式为(A)A) (X<=Y)&&(Y<=Z)B)(X<=Y)AND(Y<=Z) C) (X<=Y<=Z) D) (X<=Y)&(Y<=Z)18、程序片段:在TC20中, int i=65536; printf("%d\n",i);的输出结果是(B)A) 65536 B) 0 C) 有语法错误,无输出结果D) -119、当调用函数时,实参是一个数组名,则向函数传送的是(B)A) 数组的长度B) 数组的首地址C) 数组每一个元素的地址D) 数组每个元素中的值20、对嵌套子程序调用说法正确的是(C) A、外层子程序可以调用所有的内层子程序B、内层了程序只可以调用包含本身的外层子程序,不可以隔层调用C、外分程序必须能完全套住内分程序D、以上说法均不正确21、对于基类型相同的两个指针变量之间,不能进行的运算是(C)A)< B)= C)+ D)-22、合法的C语言中,合法的长整型常数是(A)A) '\t' B) "A" C) 65 D) A23、假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是(D) A) 3 B) 6 C) 10 D) 2024、假定有以下变量定义: int k=7 ,x=12; 则能使值为3的表达式是(D)A x%=(k%=5)B x%=(k-k%5)C x%=k-k%5D (x%=k)-(k%=5)25、请读程序片段(字符串内没有空格): printf("%d\n",strlen("ATS\n012\1\\"));的输出结果是(C)A) 11 B) 10 C) 9 D) 826、请选出合法的C语言赋值语句(B)A) a=b=58 B) i++; C) a=58,b=58 D) k=int(a+b);27、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是(C) A) -3 B) 9C) -12 D) 628、若int类型占两个字节,则以下语句输出为(D) int k=-1; printf("%d,u%\n",k,k);A、-1,-1B、-1,65536C、-1,32768D、-1,6553529、若变量a是int类型,并执行了语句:a=‘A'+1、6;,则正确的叙述是(D)A) a的值是字符C B) a的值是浮点型C) 不允许字符型和浮点型相加D) a的值是字符‘A’的ASCII值加上130、若变量已正确说明为float类型,要通过语句scanf("%f %f %f ",&a,&b,&c);给a赋于10、0,b赋予22、0,c赋予33、0,不正确的输入形式是(B) A) 10 B) 10、0,22、0,33、0 22 33 C) 10、0 D) 10 22 22、0 33、0 3331、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为(B) A)a<>0 B)!a C)a=0 D)a32、若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是(C) A)1 B)2 C)2、0D)2、533、若有定义:int a=8,b=5,c;,执行语句c=a/b+0、4;后,c的值为(B) A) 1、4 B) 1C) 2、0 D) 234、若有定义:int x,y;char a,b,c;并有以下输入数据(此处< CR> 代表换行符,/u代表空格): 1u2 AuBuC 则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c 赋字符C 的正确程序段是(D)A)scanf("x=%dy+%d",&x,&y);a=getchar();b=getchar();c=getchar();B)scanf("%d%d",&x ,&y);a〱昳=getchar();b=getchar();c=getchar();C)scanf("%d%d%c%c%c,&x,&y,&a,&b,&c);D)sca nf("%d%d%c%c%c%c%c%c:&x,&y,&a,&a,&b,&b,&c,&c);35、若有定义和语句: char s[10]:s="abcd";printf("%s\n",s); 则结果是(D)(以下u代表空格)A) 输出abcd B) 输出a C) 输出abcduuuuu D) 编译不通过36、若有以下程序段,int c1=1,c2=2,c3; c3=1、0/c2*c1; 则执行后,c3中的值是(A)A) 0 B) 0、5 C) 1 D) 237、若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为(D)A) floatB) int C) char D) double38、若有以下定义和语句char c1='b',c2='e'; printf("%d,%c\n",c2-c1,c2-'a'+"A"); 则输出结果是(B)A)2,M B)3,E C)2,E D)输出项与对应的格式控制不一致,输出结果不确定39、若有以下函数调用语句:fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是(A)A)3 B)4 C)5 D)640、若执行下面的程序时从键盘上输入3和4,则输出是(B)A) 14 B) 16 C) 18 D) 20 main( ) { int a,b,s; scanf("%d %d",&a,&b); s=a; if(a41、若执行下面的程序时从键盘上输入5,则输出是(B) A) 7 B) 6 C) 5 D) 4 main() { int x; scanf("%d",&x); if(x++>5) printf("%d\n",x); else printf("%d\n",x--);}42、若执行以下程序时从键盘上输入9,则输出结果是(B)A)11 B)10 C) 9 D) 8 main( ) { int n; scanf("%d",&n); if(n++43、设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为(C)A) 0 B) 1 C) 2 D) 344、设int a=12,则执行完语句a+=a-=a*a后,a的值是(D)A) 552 B) 264 C) 144 D) -26445、设int b=2;表达式(b>>2)/(b>>1)的值是(A) A) 0 B) 2 C) 4 D) 846、设a,b和c都是int型变量,且a=3,b=4,c=5,则下列表达式中,值为0的表达式是________ A)'a'&&'b' B)a<=b C)a||b+c&&b-c D)!((a47、设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为(C)A 4B 16C 32D 5248、设x=3,y=-4,z=6,写出表达式的结果(B)!(x>y)+(y!=z)||(x+y)&&(y-z) A、0 B、1 C、-1 D、649、设x和y均为int 型变量,则以下语句:x+=y;y=x-y;y=x-y;x-=y;的功能是(D)A、把x 和y按从大到小排列B、把x和y按从小到大排列C、无确定结果D、交换x 和y中的值50、设有int x=11; 则表达式(x++ * 1/3) 的值是(A) A) 3 B) 4 C) 11 D) 1251、设有如下的变量定义: int i =8,k ,a,b ; unsigned long w=5; double x=1,42,y=5、2; 则以下符合C语言语法的表达式是(A) A、a+=a-=(b=4)*(a=3) B、x%(-3); C、a=a*3=2D、y=float(i)52、设有如下定义: char *aa[2]={"abcd","ABCD"}; 则以下就法中正确的是(D)A) aa数组成元素的值分别是"abcd"和ABCD" B) aa是指针变量,它指向含有两个数组元素的字符型一维数组C) aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址D) aa数组的两个元素中各自存放了字符'a'和'A'的地址53、设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是(D) A) 1 B) 0 C) 4 D) 354、设有数组定义: char array [ ]="China"; 则数组array所占的空间为(C)A) 4个字节B) 5个字节C) 6个字节D) 7个字节വㄊ㌰൦5、设有说明语句:char a='\72';则变量a (A)A) 包含1个字符B) 包含2个字符C) 包含3个字符D) 说明不合法56、设有以下语句:int x=03,y=02,z=01;那么语句printf("%d",x|y&~Z)的执行结果(C)(A) 1 (B) 2 (C) 3 (D) 057、下列if语句中,不正确的是(C)A、if(x>y);B、if(x==y) x+=y; C、if(x!=y)scanf("%d",&x) else x=1; D、if(x58、下列变量定义中合法的是(A)A)short _a=1-、le-1;B)double b=1+5e2、5;C) long do=0xfdaL; D) float 2_and=1-e-3;59、下列标识符中不合法的是(D)A、s_name B、_e C、fox D、3DS60、下列不正确的转义字符是(C) A) '\\' B) '\" C) '074' D) '\0'61、请读程序: main(){ int a=1,b=2; printf("%d\n",a=a+1,a+6,b+2);}则上面程序的输出结果是(A)A、2B、3C、4D、162、请读程序: int i=0,j=0,a=6; if((++i>0)||(++j>0))a++;printf("i=%d,j=%d,a=d%\n",i,j,a); 则上面程序的输出结果是(B)A、i=0,j=0,a=6 B、i=1,j=0,a=7 C、i=1,j=1,a=6 D、i=1,j=1,a=763、下列程序段的输出结果为(A) int y=1; while(y--); printf("y=%d\n",y); A、y=-1B、y=0C、死循环D、y=964、下列程序执行后的输出结果是(B) A) 3 B) 6 C) 9 D)随机数main(){ inta[3][3],*p,i;p=&a[0][0];for(i=p; i65、下列程序执行后的输出结果是(A)A) G B) H C) i D) J main() { int x='f';printf("%c \n",'A'+(x-'a'+1)); }66、下列程序执行后的输出结果是(小数点后只写一位)(A)A) 6 6 6、0 6、0 B) 6 6 6、7 6、7 C) 6 6 6、0 6、7 D) 6 6 6、7 6、0 main() { double d; float f; ling l; int i; i=f=1=d=20/3; printf("%d %ld %f %f \n", i,l,f,d); }67、下列可作为C语言赋值语句的是(C)A)x=3,y=5 B)a=b=6 C)i--; D)y=int(x);68、下列描述中不正确的是(C) A) 字符型数组中可以存放字符串B) 可以对字符型数组进行整体输入、输出C) 可以对整型数组进行整体输入、输出D) 不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值69、下列说法中正确的是(B) A、在switch语句中一定要使用break语句B、在switch 语句中不一定要使用break语句C、break语句是switch语句的一部分D、break只能用于switch语句中70、下列运算符其优先级最高的是(C) A、|| B、&& C、+ D、=71、下面的DO循环中,一共循环(D)次。