文档库 最新最全的文档下载
当前位置:文档库 › C语言基础测试题含答案

C语言基础测试题含答案

C语言基础知识_测试题

C语言程序设计基础测试题 一、单选 [1] 下面叙述中错误的是____。 A. 复合语句中定义的函数只在该复合语句中有效 B. return( )语句中的括号中,可以是变量,常量或有确定值的表达式 C. 形式参数也是局部变量 D. 主函数中定义的变量在整个程序中都是有效的 [2]下列说法中正确的是____。 A.带参数的宏定义中的参数是没有类型的 B.宏展开将占用程序的运行时间 C.宏定义命令是C语言中的一种特殊语句 D.使用#include命令包含的头文件必须以“.h"为后缀 [3.] 若函数的形参为一维数组,则下列说法中正确的是____。 A.调用函数时的对应实参必为数组名 B.形参数组可以不指定大小 C.形参数组的元素个数必须等于实参数组的元素个数 D.形参数组的元素个数必须多于实参数组的元素个数 [4]. 系统的标准输出设备是____。 A.键盘 B.硬盘 C.内存 D.显示器 [5] 下面叙述中正确的是____。 A.全局变量在定义它的文件中的任何地方都是有效的 B.全局变量在程序的全部执行过程中一直占用内存单元 C. C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式 D. 说明函数时必须明确其参数类型和返回类型 [6]. C程序的基本结构单位是____。 A.文件 B.语句 C.函数 D.表达式 [7] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是____。 A.aa数组元素的值分别是"abcd"和"ABCD" B.aa是指针变量,它指向含有两个数组元素的字符型一维数组 C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址 D.aa数组的两个元素中各自存放了字符'a'和'A'的地址 [8]. 任何一个C语言的可执行程序都是从____开始执行的。 A.程序中的第一个函数 B.main( )函数的入口处

C语言习题

1.在C语言程序中,可以用作变量名的是____B_____。 A.1 B.a1 C.int D.*p 2.设有如下的变量定义: 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=2 D.w=float(i) 3.设整型变量a的初值为12,执行完a+=a-=a*a后,a的值为_D___。 A.522 B.144 C.264 D.-264 4.C语言中要求参加运算的数必须是整数的运算符是__C______。 A./ B.!C.% D.= =我iuf 5.下面程序的输出是__C_____ 第 1 页共9 页

main() { int x=10,y=3; printf(“%d\n”,y=x/y); } A.0 B.1 C.3 D.不确定的值 6.执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为__C_____。 A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,2 7.已知i=5,写出语句i-=0x12; 执行后整型变量i 的值是__A______。 A.-13 B.5 C.12 D.10 8.C语言规定:在-个源程序中,main函数的位置___C____。 A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 9.putchar函数可以向终端输出一个___D_______ A.整型变量表达式值B.实型变量值 C.字符串D.字符或字符型变量值 10.printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列?如果字符串长度大于5,则输出按方式___B_____。 A.从左起输出该字串,右补空格 B.按原字符长从左向右全部输出 C.右对齐输出该字串,左补空格 D.输出错误信息 11.已有定义int x; f1oat y;且执行scanf("%3d%f",&x,&y);语句,若从第-列开始输入数据12345 678(回车),则x 的值为___B_______。A.12345 B.123 C.45 D.345 12.C语言程序中,当调用函数时___A_______。 第 2 页共9 页

C语言基础编程题

5-1求幂之和(15分) 本题要求编写程序,计算sum=2^1+2^2+2^3+\cdots+2^n sum=21+22+23++2n。可以调用pow函数求幂。 输入格式: 输入在一行中给出正整数n n(\le≤10)。 输出格式: 按照格式“result=计算结果”输出。 输入样例: 输出样例: #include<> #include<> intmain() { inti,n,sum=0; scanf("%d",&n); for(i=1;i<=n;i++) { sum=sum+pow(2,i); } printf("result=%d\n",sum); return0; } 5-2近似求PI(15分) 本题要求编写程序,根据下式求\piπ的近似值,直到最后一项小于给定精度eps。

\frac{\pi}{2}=1+\frac{1!}{3}+\frac{2!}{3\times5}+\frac{3!}{3\times5\times7}+\ cdots+\frac{i!}{3\times5\times\cdots\times(2\timesi+1)}+\cdots2π=1+31!+3×52!+3×5×73!++3×5××(2×i+1)i!+ 输入格式: 输入在一行中给出精度eps,可以使用以下语句来读输入: 输出格式: 在一行内,按照以下格式输出\piπ的近似值(保留小数点后5位): 输入样例: 输出样例: #include<> #include<> intmain() { doublea=1,b=3,i=1,j=3; doubleeps,m=1,sum=0; scanf("%le",&eps); while(m>eps) { m=a/b; sum=sum+m; i=i+1; j=j+2; a=a*i; b=b*j; } printf("PI=%.5lf\n",2+2*sum);

C语言程序设计基础试题及答案

第一部分C语言基础 一、选择题 1、以下正确得C语言标识符就是() A。%X B。a+b?C.a123 D.test! 2、已定义int a,b;则以下不正确得C语句就是() A.a*=5;??B。b/=2;? C.a+=1、75;?D.b&&=a; 3、若x、i、j与k都就是整型变量,则执行下面表达式后x得值为( ) x=(i=4,j=16,k=32) A.4?B.16 ?C.32 D.52 4、C语言中得标识符只能由字母、数字与下划线三种字符组成,且第一个字符( ) A.必须就是字母???B.必须为下划线? C.必须为字母或下划线D.可以就是字母、数字、下划线中得任一字符 5、下面正确得字符常量就是( ) A.“c”? B。’\\”? C.‘w’??D.” 6、设int a=2,b=0,c;则执行语句c+=b&&a--后, c得结果为( )。 A.0,1B.1,0 ?C.2,0 D.不确定 7、以下不正确得C语言标识符就是()?A) int B)a_1_2?C)ab1exe D)_x 8、以下就是正确得C语言标识符就是( )。?A)#define?B)_123 C) %d D) \n 9、下列四组字符串中都可以用作C语言程序标识符得一组就是() 。?A) prin tB)i\am C)Pxq D)str_l ???oodbs tart$it line# _3d one_half My-〉bookCpp ? pow 10、下面各选项组中,均就是C语言关键字得组就是()。?A)auto,enu

m,include B)switch,typedef,continue?C)signed,union,scanf?D)if,s truct,type 11、下列不属于C语言关键字得就是( ) 。 A)default?B)register C)enum ?D)external 12、C语言程序从main()函数开始执行,所以这个函数要写在( )。?A) 程序文件得开始?B)程序文件得最后?C)它所调用得函数得前面 D) 程序文件得任何位置 13、下列关于C语言得叙述错误得就是( ) A)大写字母与小写字母得意义相同?B) 不同类型得变量可以在一个表达式中 C)在赋值表达式中等号(=)左边得变量与右边得值可以就是不同类型?D) 同一个运算符号在不同得场合可以有不同得含义 14、在C语言中,错误得int类型得常数就是( ) 。?A)32768?B)0 C)037?D) 0xAF 15、将字符g赋给字符变量c,正确得表达式就是( )。 A) c=\147 ?B)c="\147" ?C)c='\147' 16、下列转义字符中错误得一个就是( )。 A) ’\000’ B)'\0014' ?C) ’\x111’ D) ’\2’ 17、将空格符赋给字符变量c,正确得赋值语句就是( )。 A) c=’\0’ B) c=NULL C)c=0 D)c=32 18、已知:char a=’\70’;则变量a中()。 A)包含1个字符?B)包含2个字符?C) 包含3个字符?D) 说明非法 19、字符串"\”EOF\n=-\61\””得长度就是( )。 A)8 ?B) 9?C)14?D)非法字符串

c语言程序基础练习题道(附标准答案)

c语言程序基础练习题道(附答案)

————————————————————————————————作者:————————————————————————————————日期:

1.下列四组选项中,均不是C语言关健字的选项是( A )。 A) define B) gect C) include D) while IF char scanf go type printf case pow 2.下面四个选项中,均是合法整型常量的选项是( A )。 A)160 B)-0xcdf C) -01 D)-0x48a -0xffff 01a 986,012 2e5 011 0xe 0668 0x 3.下面四个选项中,均是不合法的转义符的选项是( B )。 A) '\"' B) '\1011' C) '\011' D) '\abc' '\\' '\' '\f' '\101' 'xf' '\A' '\}' 'x1f' 4.下面不正确的字符串常量是( A )。 A)'abc' B)"12'12" C)"0" D)" " 5.以下选项中不合法的用户标识符是( A )。 A)abc.c B)file C)Main D)PRINT 6.C语言提供的合法关键字是( D )。 A) swith B) cher C) Case D)default 7.下列标识符组中,合法的用户标识符为 A A)_0123与ssiped B)del-word与signed C)list与*jer D) keep%与wind 8.在C语言中,逻辑值"真"的表示是用( C )。 A) true B) 整型值0 C)非另整型值D) T 9若有以下定义 char s='\092'; 则该语句( b ) A)使s的值包含一个字符B)定义不合法,s的值不确定 C)使s的值包含4个字符D)使s的值包含3个字符 10设C语言中,int类型数据占2个字节,则float类型数据占(D )个字节。 A)1 B)2 C)8 D)4 11已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为( A )。 A)D B)68 C)不确定的值D)C 12逻辑运算符两侧运算对象的数据类型是( D )。 A) 只是0或1 B) 只能是0或非0正数 C) 只能是整型或字符型数据D) 可以是任何合法的类型数据 13TURBO C中int类型变量所占字节数是( B )。 A)1 B)2 C)3 D)4

年C语言程序设计基础期末考试试卷‘B’及答案

年C语言程序设计基础期 末考试试卷‘B’及答案 The following text is amended on 12 November 2020.

一、单项选择题 1. 在C语言中,下面字符串能用作变量名的是( )。 A、a+b B、auto C、2-and D、a2 2. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。 A、 B. C. D. 3 3. 下列关于C语言中字符常量与字符串常量的叙述中,错 误的是( )。 A、字符常量是用单撇号括起来的一个字符 B、空格字符也可用作字符常量 C、字符串常量是用单撇号括起来的一个字符序列 D、字符串常量是用双撇号括起来的一个字符序列 4. 若有以下变量说明和数据的输入方式,则正确的输入语 句为( )。

变量说明:float x1,x2; 数据的输入方式:<回车> <回车> A、scanf(“%f,%f”,&x1,&x2); B、scanf(“%f%f”,&x1,&x2); C、scanf(“%,%”,&x1,&x2); D、scanf(“%%”,&x1,&x2); 6. 在一个源文件中定义的全局变量的作用域为()。 A. 本文件的全部范围 B. 从定义该变量开始至本文件结束 C. 本函数的全部范围 D. 本程序的全部范围

7. 当调用函数时,实参是一个数组名,则向函数传送的是( )。 A、数组的长度 B、数组的首地址 C、数组每一个元素的地址 D、数组每个元素中的值 8.若j为整型变量,则下面while循环( )。 j=10; while(j!=0) j=j-1; A、执行0次 B、执行1次 C、执行10次 D、执行无限次 9. 在while(x)语句中的x与下面条件表达式等价的 是:( )。 A、x!=0 B、 x==1 C、x!=1 D、x==0 10. 以下对C语言函数的描述中,正确的是( )。 A、调用函数时,参数可以是表达式

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 语言字符型常量。

c语言程序基础练习题00道(附答案)

1.下列四组选项中,均不是C语言关健字的选项是( A )。 A) define B) gect C) include D) while IF char scanf go type printf case pow 2.下面四个选项中,均是合法整型常量的选项是( A )。 A)160 B)-0xcdf C) -01 D)-0x48a -0xffff 01a 986,012 2e5 011 0xe 0668 0x 3.下面四个选项中,均是不合法的转义符的选项是( B )。 A) '\"' B) '\1011' C) '\011' D) '\abc' '\\' '\' '\f' '\101' 'xf' '\A' '\}' 'x1f' 4.下面不正确的字符串常量是( A )。 A)'abc' B)"12'12" C)"0" D)" " 5.以下选项中不合法的用户标识符是( A )。 A)abc.c B)file C)Main D)PRINT 6.C语言提供的合法关键字是( D )。 A) swith B) cher C) Case D)default 7.下列标识符组中,合法的用户标识符为 A A)_0123与ssiped B)del-word与signed C)list与*jer D) keep%与wind 8.在C语言中,逻辑值"真"的表示是用( C )。 A) true B) 整型值0 C)非另整型值 D) T 9若有以下定义 char s='\092'; 则该语句( b ) A)使s的值包含一个字符 B)定义不合法,s的值不确定 C)使s的值包含4个字符 D)使s的值包含3个字符 10设C语言中,int类型数据占2个字节,则float类型数据占( D )个字节。 A)1 B)2 C)8 D)4 11已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为( A )。 A)D B)68 C)不确定的值 D)C 12逻辑运算符两侧运算对象的数据类型是 ( D )。 A) 只是0或1 B) 只能是0或非0正数 C) 只能是整型或字符型数据 D) 可以是任何合法的类型数据 13TURBO C中int类型变量所占字节数是( B )。

C语言习题集(基础篇)

《C语言程序设计》习题篇 第一章C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。 A、语言简洁紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件操作 D、C语言移植性好 2.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D._ok 3.正确的C语言标识符是()。 A._buy_2 B.2_buy C.?_buy D.buy? 4. 请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 5.下列符号中,不属于转义字符的是()。 A.\\ B.\0xAA C.\t D.\0 6.不属于C语言关键字的是()。 A.int B.break C.while D.character 7.是C语言提供的合法关键字的是()。 A.Float B.signed C.integer D.Char 8.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 9.一个C程序是由()。 A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 11.下列说法中,错误的是()。 A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外 C.主函数只能调用用户函数或系统函数,用户函数可以相互调用

C语言程序设计入门经典例题

1、加法练习程序:由用户通过键盘输入加数和被加数,程序显示加法式子,用户通过键盘作答后,程序给出正确与错误提示信息。要求:利用C的选择语句if条件语句或switch 开关语句,键盘输入数据前,程序会出被输入数据的信息提示。 #include void main(){ int a,b,c; printf("please put an addend:\n");scanf("%d",&a); printf("please put an augend:\n");scanf("%d",&b); printf("please answer the question:a+b=?");scanf("%d",&c); if(a+b==c) printf("very good!"); else printf("wrong! "); } 个人感觉这个程序最不好的地方是,不管回答正确还是回答错误,程都会立即结束,所以我用了do…while实现一个回答错误之后获得再次回答机会的循环,则程序修改如下: #include void main(){ int a,b,c; printf("请输入一个加数:\n");scanf("%d",&a); printf("请输入一个被加数:\n");scanf("%d",&b); do { printf("请回答:a+b=");scanf("%d",&c); if(a+b!=c) printf("请再想一想\n"); } while(a+b==c) printf("回答正确!"); } 2、判闰年程序:判断某一年是否闰年? 要求:程序首先提示用户从键盘输入4位数年份,程序能显示“XXXX年是闰年”或“XXXX年不闰年”的输出信息。 算法:year 是闰年,即year能被4整除但不能被100整除,或 year 能被 400 整除。其对应的C逻辑表达式为:(year % 4 = = 0 && year % 100 != 0) || (year % 400 = = 0) 或: (!(year % 4) && year % 100) || !(year % 400 ) 程序中可设置1个变量leap来代表是否闰年的信息,闰年:leap=1; 不闰年:leap=0。 #include void main() int year; printf("请输入4位数年份:");scanf("%d",&year); if(year%4==0&&year%100!=0||year%400==0)//闰年就是能被4整除但不能被100整除及能被400整除的

C语言考试试题基础版

一、选择题 1. 在每个C 程序中都必须包含有这样一个函数,该函数的函数名为 。 A. main B. MAIN C. name D. function 2. 在以下关于C 语言的注释的叙述中,不正确的是 。 A .注释可用"/*"、"*/"形式表示,也可用"//"形式表示 B .编译器在编译一个程序时,将跳过注释,不对其进行处理 C .编译器在编译一个程序时,可发现注释中的单词拼写错误 D .程序中注释的多少不会影响所生成的可执行文件的长度 3. 以下叙述不正确的是 。 A .在C 程序中,严格区分大小写字母 B .一个C 源程序有且仅有一个main 函数 C .在C 程序中,注释只能位于一条语句的后面 D .一个C 程序总是从main 函数开始执行 4. 下列合法的标识符为 A. abde+ B. #KDJF C. 67KDJ D. DK3_ 5. 关于字符串和字符的关系正确的是 A. “A ”与’A ’是相同的 B. 字符串是常量,字符是变量 C. “A ”与’A ’是不同的 D. “A ”与“A ”是相同的 6. 下面关于语句的说法正确的是 A. 下面这两段程序的执行效果是一致的 B. 空语句是只有一个分号的语句,它其实什么也不干 C. 语句的构成不一定需要分号 D. 语句的书写对程序的运行不起作用,因此可以随便写都可以 7. 以下各标识符中,合法的用户标识符组为 。 A. PAd ,P#d ,b-b ,abc ,_0123,ssiped B. cin ,a10,CPP ,float ,del_word ,signed C. void ,max ,hiy ,,list ,*jer if (x>y) {z=x; s=z*z;} else {z=y;s=1/(z*z);} if (x>y) z=x; s=z*z; else z=y;s=1/(z*z);

C语言入门必做习题100例(四)

1. (N阶梵塔) 有K根棒,第一根上放N片大小不等的圆盘,并保持上小下大的 顺序。现将N片圆盘从第1根移至第K根,移动中均保持上小下大的顺序,问最少移几次方得结果,求出移动方案。 2. 某一印刷厂有六项加工任务,对印刷车间和装订车间所需时间见下表(时间单位:天) 任务│J1 J2 J3 J4 J5 J6 ─────┼─────────────── 印刷车间│31252911 装订车间│8109631 如何安排加工顺序,使加工时间最少。 3. 将7万元投资到A,B,C三项目上,其利润见下表: 投资额(万元)│1234567 ──────┼──────────────────── 项A│0.11 0.13 0.15 0.24 0.24 0.30 0.35 B│0.12 0.16 0.21 0.25 0.25 0.29 0.34 目C│0.08 0.12 0.20 0.26 0.26 0.30 0.35 如何分配投资额,使获得的利润最大。 4. 无根树与通常所说的树(有根树)很相似,它包含有节点和枝,但不含有根。无根树节点之间只有相邻关系。如图一所示,是一棵有七个节点的无根树,以图一的A为根节点得到图二所示的有根树,以B为根节点得到图三所示的有根树,但从无根树的角度看,图一、二、三是结构相同的无根树,同时无根树的结构与节点的名称无关。 有根树可以用字符串的形式表示,其递归表示方法是: 根节点(子树1子树2子树3...) 图一,图二的有根树可表示为 A(B(CF(EGD))) 和 B(ACF(EGD))。由于子树的表示顺序可以不同,所以一棵有根树可以有多种表示方法,如图三又可表示成 B(F(EGD)CA) 或 B(ACF(DE(G)) 等。表示无根树时,可以以它任一节点为根节点,将其看作有根树,从而可以利用有根树的字符串表示形式来表示无根树。 任务一:由键盘读入一个字符串表示的无根树,无根树的各节点的名称用互不相同的大写英文字母表示。由用户输入一个节点的名称,程序应能够输出一种以该 节点为根节点的字符串形式。程序输出无根树的字符串形式时,各个节点的名称无 关紧要,所有节点都以P表示,以后的各种输出也采用这种形式。例如:输入无根 树的字符串形式:A(B(CD(EF))),指定根节点为D,程序应能输出 P(P(PP)PP),P(PP(PP)P),P(PPP(PP))中的任意 一种即可。 任务二:输入两个串表示的无根树,判断其结构是否一样。注意它与节点名称 无关,只考虑结构。

C语言编程基础考试试题

C语言编程基础考试试题 文档名称文档密级 C语言编程基础考试 [考前说明]本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C 语言的标 准函数都可用;如果不特别说明, 假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐, X86(80586)CPU处理器(32位小字节序处理器). 一、单选题 1、给出以下定义: char acX[ ]= "abcdefg"; char acY[ ]= {'a','b','c','d','e','f','g'}; 则正确的叙述为( ) A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同 C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组Y的长度 2、 void example(char acHello[]) { printf("%d", sizeof(acHello)); return; } void main()

{ char acHello[] = "hello"; example(acHello); return; } 的输出是( ) A 4 B 5 C 6 D不确定 3、以下叙述中不正确的是( ) A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是在栈中保存 C) 在一个函数内定义的变量只在本函数范围内有效 D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数 中的成对括号构成的代码) 4、设有如下定义: unsigned long pulArray[] = {6, 7, 8, 9, 10}; unsigned long *pulPtr; 则下列程序段的输出结果为( ) 1 文档名称文档密级 pulPtr = pulArray; *(pulPtr + 2) += 2; printf ("%d,%d\n", *pulPtr, *(pulPtr + 2)); A)8,10 B)6,8 C)7,9 D)6,10

C语言基本练习题

1. 某城市出租车收费标准如下:起步里程是3 公里,起步费是10 元;超出起步里程后每公里 1.5 元。编写程序,输入行驶里程(公里) ,计算并输出乘客应支付的车费(元)。 #include int main() { double n; scanf("%lf",&n); if(n<=3) { printf("%d\n",10); } else { printf("%.2f\n",1.0*(10+(n-3)*1.5)); } return 0; } 2. 某城市月用水量收费标准如下:每月使用吨数小于等于15 吨的,每吨收费2.5 元;每月使用吨数超过15 吨的,采用分段计费:超过部分每吨 3 元。编写程序,输入使用吨数,计算并输出用户水费(元) 。 #include int main() { double n,x; scanf("%lf",&n); if(n<=15) {x=n*2.5; } else { x=15*2.5+(n-15)*3.0; } printf("%.2f\n",x); return 0; } 3. 求解简单表达式。输入一个形式如:"操作数运算符操作数"的四则运算表达式,输出运算结果,要求使用switch 语句( if 语句)编写。#include #include int main() { double s1,s2; char op; scanf("%lf %c %lf",&s1,&op,&s2); switch(op) {case '+':printf("%.2f\n",s1+s2);break; case '-':printf("%.2f\n",s1-s2);break; case '*':printf("%.2f\n",s1*s2);break; case '/': if(fabs(s2)

c语言期末测试题(附答案)

课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。 A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b

A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 程序运行时,输入的值在哪个范围才会有输出结果。【】

C语言初学者的几个经典习题

1.求两个数的最小公倍数: #include void main() { int a,b, num1,num2,temp; printf("请输入两个数:\n"); scanf("%d%d",&num1,&num2); if (num1 int sum_day(int year,int month,int day); void main() { int year,month,day;int days; printf("请输入要查询的年月日\n"); scanf("%d%d%d",&year,&month,&day); days=sum_day(year,month,day); printf("该天是%d天\n",days); } int tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; int sum_day(int year,int month,int day) { int i,days=0; if(year%4==0&&year%100!=0||year%400==0) tab[2]=29; for(i=1;i int isprime (int a); void main()

国家二级C语言机试(C语言基础知识)模拟试卷8

国家二级C语言机试(C语言基础知识)模拟试卷8 (总分:60.00,做题时间:90分钟) 一、选择题(总题数:30,分数:60.00) 1.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是 (分数:2.00) A.一条C语句可能会被转换成多条机器指令 B.一条C语句对应转换成一条机器指令√ C.一条C语句可能会被转换成零条机器指令 D.某种类型和格式的C语句被转换成机器指令的条数是固定的 解析:解析:由C语言编写的程序,通过编译、链接转换成可以让机器识别的01二进制指令。这些二进制指令命令机器计算,这些就是机器指令,而C语言的语句条数和机器指令的条数不是一对一的关系。 2.以下选项中不属于C语言程序运算符的是 (分数:2.00) A.sizeof B.() C.<> √ D.&& 解析:解析:sizeof为测试内存的运算符,()为算术运算符,&&为逻辑运算符。而<>不是C语言的运算符,C语言中!=表示不等于。 3.若变量已正确定义并赋值,以下不能构成C语句的选项是 (分数:2.00) A.A=a+b: B.B++; C.a=a+b √ D.A?a:b; 解析:解析:C语言语句的表示为分号,不加分号的表达式不能看成C语句。 4.以下叙述中正确的是 (分数:2.00) A.程序必须包含所有三种基本结构才能成为一种算法 B.如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达 C.只有简单算法才能在有限的操作步骤之后结束 D.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令√ 解析:解析:C语句构成了函数,函数构成的程序,经过编译转换成二进制代码后可以运行,算法是指为解决某个特定问题而采取的确定且有限的步骤,可以利用代码来捕述算法,而算法+数据结构才是程序,结构化的程序由顺序结构、循环结构和选择结构三种基本结构组成。由这三种基本结构组成的算法可以解决任何复杂的问题,反之则不一定,所有算法必须在有限步骤后结束。 5.下列选项中,不能用作标识符的是 (分数:2.00) A._1234 B._1_2 C.int_2_ D.2_int_ √ 解析:解析:C语言中标以符必须以字母或者下划线开始,选项D)中是以数字开始的不能作为标识符。6.以下选项中作为C语言合法常量的是 (分数:2.00) A.-80.√ B.-080

C语言基础题及参考答案

第一单元程序设计和C语言 一、选择题 1.C语言的基本构成单位是: A 。 A. 函数 B. 函数和过程 C. 超文本过程 D. 子程序 2.一个C语言程序总是从 B 开始执行。 A. 主过程 B. 主函数 C. 子程序 D.主程序 3.C语言的程序一行写不下时,可以 D 。 A. 用逗号换行 B. 用分号换行 C. 在任意一空格处换行 D. 用回车符换行 4.以下叙述不正确的是: C 。 A. 在C程序中,语句之间必须要用分号";"分隔 B. 若a是实型变量,C程序中a=10是正确的,因为实型变量中允许存放整型数 C. 在C程序中,无论是整数还是实数都能正确无误地表示 D. 在C程序中,%是只能用于整数运算的运算符 5.以下不正确的C语言标识符是 D 。 A. ABC B. abc C. a_bc D. ab.c 6.下列字符串是标识符的是:。 ? A. _HJ B. 9_student C. long D. LINE 1 7.以下说法中正确的是: C 。 A. C语言程序总是从第一个定义的函数开始执行 B. 在C语言程序中,要调用的函数必须放在main()函数中定义 C. C语言程序总是从main()函数开始执行 D. C语言程序中的main()函数必须放在程序的开始部分 8.不合法的常量是: B 。 A. ‘\2’ B. "" C. ‘3’ D. ‘\483’ 9.已知各变量的类型说明如下,则以下不符合C语言语法的表达式是:。 int k,a,b; unsigned long w=5; double x=1.422; A. x%(-3) B. W += -2 C. k=(a=2,b=3,a+b) D. a+=a=+(b=4)*(a=3) 10.在C语言中,字符型数据在内存中以 D 形式存放。 A. 原码 B. BCD码 C. 反码 D. ASCII码 11.若有定义:int a=7; float x=2.5; y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是: A 。

C语言上机150道题

C语言上机150道题及参考答案 1.某一门课程考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。 2.从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。例如输入355和113,输出 3.14159。 3.用while循环结构编写程序打印ASCII码为33-127的字符。 4.用do-while,for循环结构编写程序打印ASCII码为33-127的字符。 5.用for循环结构编写程序打印ASCII码为33-127字符。 6.在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构。 7.输入一个整数将其倒着输出,如54321——12345。 8.计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4。 9.从键盘输入一整数n,计算1*1+2*2+...+n*n的值。 10.用while 循环计算1+2+……+100的和。 11.用do while循环计算1+2+……+100的和。 12.用for 循环计算1+2+……+100的和。 13.输入一个小于等于10的整数n ,计算n!。 14.输入两个正整数m和n,计算m!+n!,m和n的值均小于10。 15.用循环语句,计算1~100之间的所有3的倍数之和。 16.用循环语句,计算100-200之间的所有7的倍数之和。 17.输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数。 18.输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。 19.输入一个整数,统计它有几位数。如输入367,则该数有3位数。 20.编写程序,输出1到50中间所有能被3整除的正整数。 21.把100~200之间不能被3整除的输出。 22.编程Y=1+3+5+7+...111。 23.编程y=1*1/2*1/3*1/4*1/5*1/6*...前十项之积。 24.编程输出九九乘法表。 25.求1到100奇数和。 26.求1到100偶数和。 27.编程求200以内所有质数(素数)。 28.从键盘输入一个整数,求该数的绝对值。 29.从键盘输入+、-、*、/中的任一个,输出对应的英文单词:plus、minus、mutiply、divide,如输入的不是这4个字符中的任一个,则输出“sorry,you are wrong”。 30.从键盘输入一个字符,判断其是否为a,r,或f,并输出相应的信息(不区分大小写)。 31.求解一元二次方程ax2+bx+c=0的跟(a不等于0),a,b,c均为实数,其值由键盘输入。 32.编一程序,对于给定的一个百分制成绩,输出用像'A','B','C','D','E'表示的等级成绩。设:90分以上为'A',80~89分为'B',70~79分为'C',60~69分'D',60分

相关文档