C语言二级考试试题及答案
c语言二级考试试题及答案

c语言二级考试试题及答案C语言二级考试试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中数组的描述,正确的是:A. 数组名是一个变量名B. 数组名是一个常量C. 数组名是一个指针D. 数组名是一个函数答案:B2. 以下哪个是C语言中的合法变量名?A. 2variableB. variable-nameC. variable_nameD. variable name答案:C3. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello World" + "Hello World"D. "Hello\nWorld"答案:D4. C语言中,以下哪个不是标准输入输出库函数?A. printf()B. scanf()C. getchar()D. puts()答案:C5. 下列哪个是C语言中的条件语句?A. ifB. switchC. forD. while答案:A6. C语言中,以下哪个是正确的函数定义?A. int function_name(int x, int y) { /* ... */ }B. int function_name(int x, int y);C. int function_name(int x, y) { /* ... */ }D. int function_name(int x; int y) { /* ... */ }答案:A7. 在C语言中,以下哪个是正确的递归函数调用?A. function_name(x)B. function_name(x, y)C. function_name(function_name(x))D. function_name(&x)答案:C8. 在C语言中,以下哪个是正确的结构体定义?A. struct person { int age; char name[50]; };B. struct person { int age; char name[50] }C. struct person { int age; char name[50]; }D. struct person { int age; char name[50] } person;答案:A9. 在C语言中,以下哪个是正确的指针声明?A. int *ptr;B. int ptr*;C. *int ptr;D. int * ptr;答案:A10. 下列哪个是C语言中的位运算符?A. &&B. ||C. &D. ++答案:C二、填空题(每题2分,共10分)1. C语言中,使用________运算符可以实现两个整数的按位与操作。
计算机c语言二级考试试题及答案

计算机c语言二级考试试题及答案一、单项选择1 下列数据中,为字符串常量的是()。
DA、'A'B、How do you do.C、$abcD、"house"2 以下所列的C语言常量中,错误的是( )。
BA、0xFFB、1.2e0.5C、2LD、'\72'3 以下程序的输出结果是()。
Dmain(){float x=3.6;int i;i=(int)x;printf("x=%f,i=%d\n",x,i);}A、x=3.600000,i=4B、x=3 i=3.600000C、x=3,i=3D、x=3.600000,i=34 若k是整型,则以下程序段的执行结果是:( ) B k=-3;if(k<=0) printf("####")else printf("&&&&");A、####B、有语法错误,无结果C、&&&&D、####&&&&5 若x=2,y=3则x||y的结果是( )。
CA、3B、0C、1D、26 针对下列程序段回答问题( B ).for(t=1;t<=100;t++){scanf("%d",&x);if(x<0) continue;printf("=",t);}A、x>=0时什么也不输出B、最多允许输出100个非负整数C、printf函数永远也不执行D、当x<0时整个循环结束7 以下程序的执行结果是( )。
Bmain(){ int num = 0;while( num <= 2 ) { num++; printf( "%d,",num ); } }A、0,1,2B、1,2,3,C、1,2,3,4,D、1,2,8 选择正确的输入语句( D )。
计算机二级c语言试题题库及答案

计算机二级c语言试题题库及答案一、单项选择题(每题2分,共20分)1. 在C语言中,用于定义变量的关键字是()。
A. defineB. varC. intD. let答案:C2. 下列关于C语言函数的描述,不正确的是()。
A. 函数可以没有参数B. 函数可以返回值C. 函数必须有返回值D. 函数可以嵌套定义答案:C3. 以下哪个选项不是C语言中的运算符()。
A. %B. &&C. ++D. :答案:D4. 在C语言中,用于定义一个结构体的关键字是()。
A. structB. unionC. enumD. typedef答案:A5. C语言中,用于表示逻辑与的运算符是()。
A. &&B. ||C. !D. =答案:A二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型数组的语句是:int array[10]; 其中array[0]的值默认为____。
答案:02. 如果一个函数的返回类型是int,那么在函数体中必须包含一条____语句。
答案:return3. 在C语言中,用于计算字符串长度的函数是____。
答案:strlen4. C语言中,用于将字符数组转换为字符串的字符是____。
答案:'\0'5. 当使用指针变量时,必须先对其进行____。
答案:初始化三、编程题(每题10分,共20分)1. 编写一个C语言函数,实现两个整数的交换。
```cvoid swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}```2. 编写一个C语言程序,计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum); return 0;}```四、简答题(每题10分,共40分)1. 简述C语言中指针和数组的关系。
二级C语言试题(含答案)

二级C语言试题(含答案)二级C语言试题一、判断题(2×8=16分)1、printf()函数总是从新行的起始位置开始打印。
( F )2、所有的变量在使用前都必须予以申明。
(F)3、在申明变量时必须给出变量的类型。
(T)4、C语言认为变量number和NuMbEr是相同的。
( F)5、打印三行输出的C语言程序必须用三条printf语句。
(F)6、求余运算符%只能用于两个整数操作数。
(T)7、switch选择结构中必须有default子句。
(F)8、如果x>y或ay&&a<b)为真。
(f)< p="">二、选择题(3×16=48分)1、下面实现换行功能的格式符为。
(B )A. \tB. \nC. \aD. \k2. C语言程序由什么组成?(单选) CA. 子程序B. 主程序和子程序C. 函数D. 过程3. 下面哪个表达式的值为4. DA. 11/3B. 11.0/3C. (float)11/3D. (int)(11.0/3+0.5)4. 该源程序执行后,屏幕上显示什么?void main(){int a;float b;a=4;b=9.5;printf("a=%d,b=%4.2f\n",a,b);}程序运行结果:a=4,b=9.50A. a=%d,b=%f\nB. a=%d,b=%fC. a=4,b=9.50D. a=4,b=9.55. 若有以下说明语句: Bchar s=’\\\092’;则下面哪一项是正确的.A. 使s的值包含2个字符B. 说明语句不合法C. 使s的值包含6个字符D. 使s的值包含4个字符6.若k,g均为int型变量,则以下语句的输出为哪一项? A int k,g;k=017;g=111;printf("%d,",k);printf("%x\n",g);A. 15,6fB. f,6fC. f,111D. 15,1117. 在C语言的if语句中,用作判断的表达式为___。
计算机二级考试c语言试题及答案

计算机二级考试c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,下面哪个选项是合法的标识符?A. 2abcB. abc123C. _abcD. abc$答案:C2. 在C语言中,下面哪个运算符具有左结合性?A. 赋值运算符B. 逻辑运算符C. 位运算符D. 关系运算符答案:A3. 下面哪个函数用于实现字符串的复制?A. strcpyB. strcatC. strlenD. strcmp答案:A4. 下面哪个选项是正确的整型常量的表示方法?A. 1234BB. 0x1234C. 1234DD. 01234答案:D5. 下面哪个选项是合法的实型常量的表示方法?A. 123.B. 123.C. 123.D. 123.答案:C6. 在C语言中,下面哪个函数用于实现字符串的连接?A. strcpyB. strcatC. strlenD. strcmp答案:B7. 下面哪个选项是正确的关于一维数组的描述?A. 数组名是一个指向数组首元素的指针B. 数组名是一个指向数组首元素的指针C. 数组名是一个指向数组首元素的指针D. 数组名是一个指向数组首元素的指针答案:A8. 下面哪个选项是正确的关于二维数组的描述?A. 二维数组可以看作是多个一维数组的组合B. 二维数组可以看作是多个一维数组的组合C. 二维数组可以看作是多个一维数组的组合D. 二维数组可以看作是多个一维数组的组合答案:A9. 在C语言中,下面哪个函数用于实现字符串的比较?A. strcpyB. strcatC. strlenD. strcmp答案:D10. 下面哪个选项是合法的C语言语句?A. if(条件) {B. while(条件)C. do {D. }答案:D二、填空题(每题2分,共20分)1. 在C语言中,一个整型变量占用的存储空间为_____个字节。
答案:42. C语言中,定义一个整型变量的一般形式为_____。
答案:int 变量名;3. C语言中,定义一个实型变量的一般形式为_____。
计算机二级考试c语言试题及答案

计算机二级考试c语言试题及答案计算机二级考试C语言试题及答案一、选择题1. 在C语言中,以下哪个选项是正确的整型常量?A. 0x123B. 123.0C. 123e2D. 123.0L答案:A2. 以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A3. 在C语言中,以下哪个选项是正确的字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World!", 'Hello, World!'D. "Hello, World!'"答案:A4. 在C语言中,以下哪个选项是正确的函数定义?A. int add(int a, int b) { return a + b; }B. int add(int a; int b) { return a + b; }C. int add(int a, int b) { return a - b; }D. int add(a, b) { return a + b; }答案:A5. 在C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int array[10] = {0};D. int array = 10;答案:A二、填空题1. 在C语言中,用于输入的函数是___________。
答案:scanf2. 在C语言中,用于输出的函数是___________。
答案:printf3. 在C语言中,用于计算两个整数的差的运算符是___________。
答案:-4. 在C语言中,用于定义一个整型变量的关键字是___________。
答案:int5. 在C语言中,用于定义一个字符型变量的关键字是___________。
江苏省计算机c语言二级考试试题及答案

江苏省计算机c语言二级考试试题及答案一、选择题(每题2分,共40分)1. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. variable-nameD. variable name答案:B2. 在C语言中,以下哪个关键字用于声明函数?A. classB. functionC. voidD. int答案:D3. 若有以下代码片段:```cint a = 3, b = 5;printf("%d", a + b);```输出结果是什么?A. 8B. 35C. 53D. 3+5答案:A4. 在C语言中,哪个运算符用于计算两个数的乘积?A. +B. -C. *D. /答案:C5. 以下哪个选项是C语言中合法的数组声明?A. int array[10];B. int array[];C. int array[10][];D. int array[10][10];答案:A6. C语言中,哪个函数用于输入一个字符?A. scanf()B. getchar()C. printf()D. puts()答案:B7. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. %D. +=答案:A8. 在C语言中,哪个关键字用于声明一个结构体?A. structB. unionD. typedef答案:A9. 若有以下代码片段:```cint x = 10;printf("%d", x++);```输出结果是什么?A. 10B. 11C. 9D. 无法确定答案:A10. 在C语言中,哪个函数用于输出一个字符串?A. scanf()B. printf()C. gets()D. puts()答案:D11. 下列哪个选项是C语言中合法的指针声明?A. int *pointer;B. int pointer[];C. int pointer[10];D. int *pointer[10];答案:A12. 在C语言中,哪个关键字用于声明一个枚举?B. unionC. structD. typedef答案:A13. 若有以下代码片段:```cint a = 10, b = 20;printf("%d", a > b ? a : b);```输出结果是什么?A. 10B. 20C. 30D. 无法确定答案:B14. 在C语言中,哪个函数用于计算两个数的绝对值?A. abs()B. fabs()C. sqrt()D. pow()答案:A15. 下列哪个选项是C语言中合法的函数声明?A. int function();B. void function();C. int function(int x);D. All of the above答案:D16. 在C语言中,哪个关键字用于声明一个联合体?A. unionB. structC. enumD. typedef答案:A17. 若有以下代码片段:```cint a = 10, b = 20;printf("%d", a < b ? a : b);```输出结果是什么?A. 10B. 20C. 30D. 无法确定答案:A18. 在C语言中,哪个函数用于计算两个数的指数?A. pow()B. sqrt()C. fabs()D. abs()答案:A19. 下列哪个选项是C语言中合法的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI "3.14159"D. #define PI 3.14159答案:A20. 在C语言中,哪个关键字用于声明一个宏?A. defineB. macroC. constD. typedef答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是________。
计算机二级c语言试题库及答案

计算机二级c语言试题库及答案一、选择题1. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello, World!";B. char str[12] = "Hello, World!";C. char str = "Hello, World!";D. char str[] = {"Hello", "World!"};答案:A2. 下列哪个函数用于计算字符串的长度?A. strlen()B. strlength()C. length()D. size()答案:A3. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. structedC. structureD. type答案:A4. 以下哪个选项是正确的C语言函数声明?A. int function(int a, int b);B. int function(int, int);C. int function(int a; int b);D. int function(int a, int b)答案:A5. C语言中,以下哪个选项表示逻辑非运算符?A. &&B. ||C. !D. =答案:C二、填空题1. 在C语言中,使用________运算符可以将一个整数转换为一个字符。
答案:%c2. 以下代码段的输出结果是______。
```c#include <stdio.h>int main() {int a = 5;printf("%d", a++);return 0;}```答案:53. 以下代码段中,变量b的值是______。
```cint a = 10, b;b = a++;```答案:104. 在C语言中,使用________函数可以将浮点数转换为字符串。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.若i,j和k都是int型变量,则表达式(i=4,j=16,k=32,i=j)的值为A. 4B. 16C. 32D. 522.若有函数内部说明:int a[3][4];则数组a中各元素A. 可在程序的运行阶段得到初值0B. 可在程序的编译阶段得到初值0C. 不能得到确定的初值D. 可在程序的编译或运行阶段得到初值03.一个C语言程序是由A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成4.若有说明 int a[2][4];则a数组元素的非法引用是A. a[0][2*1]B. a[1][3]C. a[4-3][0]D. a[0][4]5.阅读下面程序,则执行后的输出结果是___。
#include "stdio.h"main(){int x,y,z;x=1;y=2;z=3;if(x>y)if(x>z)printf("%d",x);else printf("%d",y);printf("%d\n",z);}A. 0B. 1C. 2D. 36.下面程序的输出结果为main(){ int a,b;b=(a=3*5,a*4,a*5);printf("%d",b ;}A. 60B. 75C. 65D. 无确定值7.下列选项中不是结构化程序基本结构的是A. 顺序结构B. 跳转分支结构C. 选择结构D. 循环结构8.所有C函数的结构都包括的三部分是A. 语句、花括号和函数体B. 函数名、语句和函数体C. 函数名、形式参数和函数体D. 形式参数、语句和函数体9.设int a=5,b=6,表达式(--b==6)?++a:--b的值是___A. 5B. 6C. 7D. 410.下列叙述中不是C语言的特点的是______。
A. 简洁、紧凑,使用方便、灵活,易于学习和应用B. C语言是面向对象的程序设计语言C. C语言允许直接对位、字节和地址进行操作D. C语言数据类型丰富、生成的目标代码质量高11.下列关于C语言注释的叙述中错误的是______。
A. 以“/*”开头并以“*/”结尾的字符串为C语言的注释符B. 注释可出现在程序中的任何位置,用来向用户提示或解释程序的意义C. 程序编译时,不对注释作任何处理D. 程序编译时,需要对注释进行处理12.s1和s2已正确定义并分别指向两个字符串。
若要求:当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是A. if(s1>s2)S;B. if(strcmp (s1,s2))S;C. if(strcmp(s2,s1)>0) S;D. if(strcmp (s1,s2)>0)S;13.设i,j,k均为int型变量,则执行完下面的for语句后,k的值为___ 。
for(i=0, j=10; j>=i; i++, j--)k=i+j;A. 10B. 20C. 8D. 014.已知:int c[3][4];则对数组元素引用正确的是A. c[1][4]B. c[1.5][0]C. c[1+0][0]D. 以上表达都错误15.以下不能正确进行字符串赋初值的语句为______。
A. char str[5]="good!"B. char str[]="good!"C. char *str="good!"D. char str[5]={'g','o','o','d'}16.若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num执行后sum的值为A. 7B. 8C. 9D. 1017.设以下变量均为int类型,则值等于3的表达式是A. (x=y=2,x+y,x+1)B. (x=y=6,x+y,y+1)C. (x=6,y=6,x+y)D. (y=6,y+1,x=y)18.有以下程序main(){ int i=10;printf("%d\n",i++);}执行后输出结果是A. 9B. 10C. 11D. 819.main(){ char a[]={ ′a′, ′b′, ′c′,′d′, ′e′, ′f′, ′g′,′h′,′\0′}; int i;i=strlen(a);printf("%d\b",i);}程序运行后的输出结果是A. 9B. 10C. 7D. 820.以下不正确的定义语句是A. double x[5]={2.0,4.0,6.0,8.0,10.0};B. int y[5.3]={0,1,3,5,7,9};C. char c1[]={′1′, ′2′, ′3′, ′4′, ′5′};D. char c2[]={′\x10′, ′\xa′, ′\x8′};21.以下程序输入3课整数给a、b、c;程序把b中的值给a,把c中的值给b,把a中的值给c,然后输出a、b、c的值,请填上空缺的语句:#include<stdio.h>void main(){int a,b,c;int temp;printf("Enter a,b,c:")scanf("%d%d%d",&a,%b,&c);temp=a;a=b;b=c;______________printf("a=%d b=%d c=%d\n",a,b,c);}22.分析以下程序,写出此程序的运行结果:#include <stdio.h>int x,y;int s( ){ int z;x=3; y=4;z=x+y;return(z);}void main( ){int n;x=1; y=2;n=s( );printf("n=%d",n+x+y);}23.分析如下程序,此程序运行时输出结果是:#include<stdio.h>void test(int *x,int *y);void main(){int a=10,b=20;test(&a,&b);printf("%d",a);}void test( int *x,int *y){int t;t=*x;*x=*y;*y=t;}24.下面程序是计算n的阶乘,n是由键盘输入,最后显示出s的值,请找出此程序中错误的语句:#include <stdio.h>void main( ){ float s=1,i,n;scanf("%d",&n);while(i<=n){ s*=i;i++;};printf("s=%f",s);}在答题区域中写出此程序中错误的语句和改正后的语句!25.下面程序是让用户输入10个整数并保存到数组中,请找出此程序中错误的语句:#include <stdio.h>void main( ){ int i=0,s[10];while(i=10){ scanf("%f",&s[i]);i++;}}在答题区域中写出此程序中错误的语句和改正后的语句!26.下面程序是让用户输入10个整数并保存到数组中,请找出此程序中错误的语句:#include <stdio.h>void main( ){ int i,s[10];for(i=0;i<=10;i++){ scanf("%d",&s[i]); }}在答题区域中写出此程序中错误的语句和改正后的语句!27.下面程序是计算s=1+2+3+4+...+n,n是由键盘输入,最后显示出s的值,请找出此程序中错误的语句:#include <stdio.h>void main( ){ int s,i,n;scanf("%d",&n);for(i=1;;){ if(i<=n){ continue;}else{ s+=i; i++; }};printf("s=%d",s);}在答题区域中写出此程序中错误的语句和改正后的语句!28.打开C:\CAADATA\28中的源程序文件302.c,补充程序使得程序运行时完成以下功能:使用循环结构输出类似如下三角形的的9*9口诀表1*1=12*1=2 2*2=43*1=3 3*2=6 3*3=9........................9*1=9 9*2=18 9*3=27 .... 9*9=81注意:表中...处省略,但考生的程序要显示全部并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。
29.打开C:\CAADATA\29中的源程序文件201.c,补充程序使得程序运行时完成以下功能:输入两个整数a和b,若a和b的平方和大于100,则输出平方和的百位以上的数字,否则输出a和 b的和。
要求: 1)输出结果时说明平方和是大于100还是小于100( >100或<100 )并以原文件名保存(不得删除原文件中的注释内容,否则该题不计分)。
题号:1 分值:2 得分:2 答案:B 试卷:B 题号:2 分值:2 得分:0 答案:C 试卷:题号:3 分值:2 得分:0 答案:B 试卷:题号:4 分值:2 得分:0 答案:D 试卷:题号:5 分值:2 得分:0 答案:D 试卷:题号:6 分值:2 得分:0 答案:B 试卷:题号:7 分值:2 得分:0 答案:B 试卷:题号:8 分值:2 得分:0 答案:C 试卷:题号:9 分值:2 得分:0 答案:D 试卷:题号:10 分值:2 得分:0 答案:B 试卷:题号:11 分值:2 得分:0 答案:D 试卷:题号:12 分值:2 得分:0 答案:D 试卷:题号:13 分值:2 得分:0 答案:A 试卷:题号:14 分值:2 得分:0 答案:C 试卷:题号:15 分值:2 得分:0 答案:A 试卷:题号:16 分值:2 得分:0 答案:B 试卷:题号:17 分值:2 得分:0 答案:A 试卷:题号:18 分值:2 得分:0 答案:B 试卷:题号:19 分值:2 得分:0 答案:D 试卷:题号:20 分值:2 得分:0 答案:B 试卷:题号:21 分值:2 得分:0 答案:c=temp; 试卷:题号:22 分值:2 得分:0 答案:14 试卷:题号:23 分值:2 得分:0 答案:20 试卷:。