C语言选择题99道

合集下载

C程复习资料

C程复习资料

补充习题解答1:1.C 语言程序中可以对程序进行注释,注释部分必须用符号_____括起来。

A、‘{‘和’}’B、‘[‘和’]’C、“/*”和”*/”D、“*/”和”/*”答案:C,这题大家基本都没问题。

2.下列运算符中,优先级最低的是_____。

A、*B、!=C、+D、=答案:D。

本题考察的是运算符的优先级问题,顺序为:初等运算符>单目运算符>算术运算符>关系运算符>逻辑运算符>条件运算符>赋值运算符>逗号运算符.请大家记住这个顺序。

另外,大家在写程序的时候并不能够准确地确定优先级的时候,多加几对括号就可以了,因为在这种情况下读你程序的人可能也不确定优先级。

3.下列运算符中,优先级最低的是:_____A、*B、+C、==D、=答案:D,理由同上。

4.已知字符‘a’的ASCII码为97 ,执行下列语句的输出是_____。

printf ("%d, %c", ’b’, ’b’+1 ) ;A、98, bB、语句不合法C、98, 99D、98, c答案:D。

每一个字符都对应一个整型数值的ASCII码,故可以将字符以int型输出,反过来,也可以将符合ASCII码的int型数值进行字符。

关键在于输出格式控制。

5.有程序段如下:Int k=10;While(k=0)K=k-1;以下选项中描述正确的是_____。

A. 语句“k=k-1;”被执行10次。

B. 语句“k=k-1;”被执行1次。

C. 语句“k=k-1;”被执行无限多次。

D. 语句“k=k-1;”一次也不执行。

答案:D。

while循环体执行的条件为:while判断条件为真(非0为真0为假,特别注意,负数也为真)。

而本题的判断条件为k=0这个表达式的值,为0,故原题等价于while(0)。

所以在写程序的时候要特别避免类似的逻辑错误。

这两题很多同学有错。

6.写出判断一个年份为闰年的C语言表达式:______________________。

03050110计算机语言(C)A卷

03050110计算机语言(C)A卷
A、35 B、13 C、25 D、15
22.以下有关宏替换的叙述不正确的是:___【23】___。
A、宏替换不占用运行时间
B、宏名无类型
C、C程序在执行过程中对预处理命令行进行处理
D、宏替换只是字符替换
23.假设有宏定义:#define X 5
#define Y X+1
#define Z(m) Y*X/m则表达式Z(1+2)的值为___【24】___。
A、0 B、1 C、-1 D、一个非0值
36.函数rewind的作用是___【38】___。
A、使位置指针重新返回文件的开头
B、将位置指针指向文件中所要求的特定位置
C、使位置指针指向文件的末尾
D、使位置指针自动移至下一个字符位置
37.函数调用语句:fseek(fp,-20L,2);的含义是___【39】___。
A、将文件位置指针移到距离文件头20个字节处
B、将文件位置指针从当前位置向后移动20个字节
C、将文件位置指针从文件末尾处向后退20个字节
D、将文件位置指针移到离当前位置20个字节处
38.以只读方式打开一个已存在的文本文件,则打开的方式为___【40】___。
A、w B、a C、r+ D、r
二、阅读程序题(共15个选择,每个占2分,共30分)
else printf("%f",-x);
D、if(x>0)
{x=x+y ; printf("%f",x)}
else printf("%f"能出现语句的任何地方B、只能用在循环体内
C、只能用在循环体内或switch语句中D、可用作函数内的任一语句
16.在函数的定义格式中,必须使用C保留字的部分是___【17】___。

c语言复习题面试题考试题-全

c语言复习题面试题考试题-全

c语言复习题面试题考试题-全不定项选择题(针对以下题目,请选择最符合题目要求的答案,每道题有一项或二项正确答案。

针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。

题量为50道,每题2分,总分为100分。

)第一章1)对于C语言的描述说法错误的是()。

A、它是一种计算机程序设计语言B、它既有高级语言的特点,又具有汇编语言的特点C、它不可以作为系统设计语言,编写系统应用程序D、它可以作为应用程序设计语言,编写不依赖计算机硬件的应用程度2)在C语言中,下图所示的流程图符号代表的是()。

(选择一项)A、程序开始或结束B、判断和分支C、输入/输出指令D、计算步骤3、下列关于算法的说法正确的是()(选择二项)A、算法必须在有限步骤内解决问题B、算法可能需要无穷步才能解决问题C、算法应该有确定的结果D、算法的计算结果无法预知4、在C中,多行注释使用()符号结尾(选择一项)A、/某B、某/C、某D、ocB、.t某tC、.pptD、.c或.cpp7、以下对C语言源程序的结构特点描述错误的是()(选择一项)A、一个C语言源程序可以由一个或多个源文件组成B、每一个源文件只能有一个函数组成C、一个源程序有且只有一个main函数充当主函数D、每一个说明,每一个语句都必须以分号结尾8、下列对C语言头文件描述错误的是()(选择一项)A、中包含了标准的输入输出函数以及字符串出来函数B、中包含了数学运算函数C、中包含了各类基本函数D、中包含了时间和日期的处理函数9、从开发C语言程序到让计算机可以执行命令,需要经过以下步骤中正确的是()(选择一项)A、编辑编译预处理连接加载执行B、编辑预处理编译连接加载执行C、编辑预处理连接编译加载执行D、编辑预处理连接编译加载执行10、在C语言中,下图所示的流程图符号代表的是()。

(选择一项)A、程序开始或结束B、判断和分支C、输入/输出指令D、处理过程11、在C语言中,下图所示的流程图符号代表的是()。

C语言选择、填空、判断题

C语言选择、填空、判断题

一、单项选择题(17道小题,共20分)1、以下叙述中正确的是( C )。

(1分)A、 C语言比其他语言高级B、 C语言可以不用编译就能被计算机识别执行C、 C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D、 C语言出现的最晚,具有其他语言的一切优点2、以下说法正确的是( C )。

(1分)A、C语言程序总是从第一个函数开始执行B、在C语言程序中,要调用函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分3、下列可用于C语言用户标识符的一组是( B )。

(1分)A、 void define WORDB、 a3_b3 _123 CarC、 For abc caseD、 2a DO sizeof4、设int a=3,b=4,c=5;表达式(a+b)>c&&b==c的值是( C ) 。

(1分)A、2B、-1C、0D、15、以下关于循环体的描述中,( C )是错误的。

(2分)A、循环体中可以出现break语句B、循环体中还可以出现循环语句C、循环体中不能出现continue语句D、循环体中可以出现switch语句6、While(x)中的x相当于( D )。

(2分)A、x==0B、x==1C、x!=1D、x!=07、以下关于switch语句和break描述中 , ( A ) 是正确的。

(2分)A、在switch语句中,可以根据需要使用或不使用break语句B、switch语句中必须用break语句C、break语句只能用于switch语句D、break语句是switch语句必须的一部分8、以下对C语言函数的有关描述中,正确的是( B )。

(1分)A、在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参B、C函数既可以嵌套调用又可以递归调用C、函数必须有返回值,否则不能使用函数D、C程序中有调用关系的所有函数必须放在同一个源程序文件中、9、在下面的函数声明中,存在着语法错误的是( A )。

C语言试题6.

C语言试题6.

C语言试题及答案(6)我爱学习2009-09-13 10:05:46 阅读3030 评论1 字号:大中小C语言程序设计技能测试考试说明1、在D盘或E盘根目录下创建文件夹以存放程序文件。

2、1-4题的程序名称分别为:q1.c、q2.c、q3.c、q4.c 。

上传源程序代码到教师指定机器。

3、第1-3题,任意选择两道题,第4题必做。

C语言程序设计技能测试题(第1套)一、利用循环打印出以下图案(行数由键盘输入)。

(30分)**********二、输入一个正整数,按照逆序显示输出各位数字。

例如:输入2389,则输出为9832。

(30分)三、求s=1!+2!+3!+4!+5!并输出结果。

(30分)四、学生记录由学号、姓名、成绩组成(学号、成绩都为整数),使用结构体数组,将下列学生的数据按成绩(由大到小)排序后显示到屏幕上。

(学生数据可以直接在程序中定义,或者从键盘录入)(40分)1 Li 902 wang 953 zhao 804 liu 855 chen 946 yang 79C语言程序设计技能测试考试说明1、在D盘或E盘根目录下创建文件夹以存放程序文件。

2、1-4题的程序名称分别为:q1.c、q2.c、q3.c、q4.c 。

上传源程序代码到教师指定机器。

3、第1-3题,任意选择两道题,第4题必做。

C语言程序设计技能测试题(第2套)一、从键盘输入一个正整数,输出各位数字的和。

(30分)例如:输入2389,输出为22。

(因为2+3+8+9=22)。

二、输出101-200之间的所有素数。

(30分)三、有一个已经排好序的数组a[30]={7,10,13,16,20,24,26,46,68,69,99}。

从键盘录入一个整数,要求按原来的排序规律将它插入数组中,并显示插入后的数组的内容。

(30分)四、学生记录由学号、姓名、成绩组成(学号、成绩都为整数),将下列学生数据中不及格的学生信息显示出来。

(学生数据可以直接在程序中定义,或者从键盘录入)(40分)2 wang 953 zhao 434 liu 855 chen 946 yang 51C语言程序设计技能测试考试说明1、在D盘或E盘根目录下创建文件夹以存放程序文件。

C语言200道练习试题和答案

C语言200道练习试题和答案

A)<=
B)=
C)%
D)&&
26.表达式(a=2,3) , a+1的值是【 C 】。
A)0 B)2
C)3
D)4
27.若执行printf("%d\n", strlen("a\n\"\x41"))语句其输 出结果是【 D 】。
A)8 B)7 C)6
D)4
28.在循环语句的循环体中执行break语句, 其作用是【 A 】。 A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行
则输出是【 d 】 A)1234.56 1234 B)1234.57 1235 C)1234.56 1235 D)1234.57 1234
43.如果有
int a, b; scanf(“%d,%d”, &a, &b);语句,
则输入数据时,只可以用【 d 】作为输入的分隔符
A)TAB键 B)空格
C)回车
C)20,10 D)20,20
24.若有以下定义和语句 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)输出项与对应的格式控制不一致,输出结果不确定
25.在以下一组运算符中,优先级最高的运算符是【 C 】
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

C语言程序设计模拟试题1(附答案)

C语言程序设计模拟试题1(附答案)

《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是(D)。

A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。

A) MAIN B) _HJ C)2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是(B)。

A) \r B) \n C)\b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为(B)。

A) 1, 1 B) 1, 2 C) 2, 2 D)2, 15、已知ch为字符型变量,下面表达式中正确的是(A)。

A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是(C)。

A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5};7、以下语句中能正确定义变量并赋初值的是(A)。

A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为(D)。

main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是(C)。

x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是(A)A) 数组的首地址B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( A ) A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是(A)A) char s[5]={"ABCD"};B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是(B )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是(B)int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。

高级语言程序设计(C语言)A试卷与答案

高级语言程序设计(C语言)A试卷与答案

《高级语言程序设计(C语言)》A试卷和参考答案一、选择题(每题2分,25题,共50分)下列各题A、B、C、D四个答案中,只有一个选项是正确的,请将每题的正确答案写在答题纸对应序号的横线上,答在试卷上不能得分1、对于C语言的函数,下列叙述中正确的是(1)A、函数的定义不能嵌套,但函数调用可以嵌套B、函数的定义和调用都有不能嵌套C、函数的定义和调用都能嵌套D、函数的定义能嵌套,但函数调用不能嵌套2、以下程序的输出结果是( 2 )。

main(){int x=1,a=2, b=3;switch(x){ case 0: b=b+a;break;case 1: a=b+a;case 2: ++a;++b;}printf("a=%d,b=%d\n",a,b);}A、a=6,b=4B、a=5,b=3C、a=6,b=3D、a=5,b=43、以下程序的输出结果是( 3 )。

main(){int a=1,c;c=7/2||++a;printf("%d,%d ",a,c);}A、1,1B、0,1C、1,3D、2,34、若:char s[30][30];则数组元素的非法引用是(4)。

A、s[20][9]B、s[29+1][2*3]C、s[3][29]D、s[9][30-1]5、有以下定义语句:int a[10]={3, 9, 11, 14, 20, 32, 60}, *p;p=a;则++(*++p) 的值是(5)A、9B、11C、22D、106、下列可以正确表示字符型常数的是( 6 )A、"a"B、"\010"C、'\n'D、h7、若定义语句float bb[100],则该数组array元素的上、下限为( 7 ) 。

A、0,99B、99,0C、100,1D、0,1008、下列各组字符序列中,可用作C语言程序标识符的是(8)。

A、SBSDB、_1$234C、spr#itD、4_cf_1在9、已知:char ch='t';则下列表达式的值是( 9 )ch = (ch>='a'&&ch<='z') ? (ch-32) : ch;A、TB、AC、ZD、t10、以下程序段的输出结果是( 10 ) 。

C语言程序设计模拟试题1(附答案)

C语言程序设计模拟试题1(附答案)

C语言程序设计模拟试题1(附答案)《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是()。

A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是()。

A) MAIN B) _HJ C) 2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是()。

A) \r B) \n C) \b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为()。

A) 1, 1 B) 1, 2 C) 2, 2 D) 2, 15、已知ch为字符型变量,下面表达式中正确的是()。

A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是()。

A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”; D) char a[5]={0,1,2,3,4,5};7、以下语句中能正确定义变量并赋初值的是()。

A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为()。

main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是()。

x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是()A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是()A) 数组的首地址 B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为()A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是( )A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是 ( )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是()int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。

c语言入门100题

c语言入门100题

c语言入门100题C语言是一种广泛应用于计算机编程的高级编程语言,它简洁、高效、灵活,被广泛应用于软件开发、嵌入式系统、游戏开发等领域。

对于初学者来说,掌握C语言的基本语法和常用函数是非常重要的。

下面将介绍一些C语言入门的100道题目,帮助初学者快速入门。

1. 输出"Hello, World!"。

2. 输入两个整数,计算它们的和并输出。

3. 输入一个整数,判断它是否为偶数。

4. 输入一个字符,判断它是否为字母。

5. 输入一个年份,判断它是否为闰年。

6. 输入一个整数,判断它是否为素数。

7. 输入一个字符串,计算它的长度。

8. 输入一个字符串,将其中的大写字母转换为小写字母。

9. 输入一个字符串,将其中的小写字母转换为大写字母。

10. 输入一个字符串,判断它是否为回文串。

11. 输入一个字符串,统计其中的单词个数。

12. 输入一个字符串,将其中的数字字符删除。

13. 输入一个字符串,将其中的空格字符删除。

14. 输入一个字符串,将其中的标点符号删除。

15. 输入一个字符串,将其中的元音字母删除。

16. 输入一个字符串,将其中的辅音字母删除。

17. 输入一个字符串,将其中的大写字母移到字符串的末尾。

18. 输入一个字符串,将其中的小写字母移到字符串的末尾。

19. 输入一个字符串,将其中的数字字符移到字符串的末尾。

20. 输入一个字符串,将其中的空格字符移到字符串的末尾。

21. 输入一个字符串,将其中的标点符号移到字符串的末尾。

22. 输入一个字符串,将其中的元音字母移到字符串的末尾。

23. 输入一个字符串,将其中的辅音字母移到字符串的末尾。

24. 输入一个字符串,将其中的大写字母移到字符串的开头。

25. 输入一个字符串,将其中的小写字母移到字符串的开头。

26. 输入一个字符串,将其中的数字字符移到字符串的开头。

27. 输入一个字符串,将其中的空格字符移到字符串的开头。

28. 输入一个字符串,将其中的标点符号移到字符串的开头。

历年全国计算机二级C语言题库

历年全国计算机二级C语言题库

50道C语言知识题1.以下叙述中正确的是A)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出2.下列可用于C语言用户标识符的一组是A)void,define,WORD B)a3_3,_123,CarC)For,-abc,IF Case D)2a,DO,sizeof3.以下选项中可作为C语言合法常量的是A)-80B)-080C)-8e1.0D)-80.0e4.若有语句:char*line[5];,以下叙述中正确的是A)定义line是一个数组,每个数组元素是一个基类型为char为指针变量B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C)定义line是一个指针数组,语句中的*号称为间址运算符D)定义line是一个指向字符型函数的指针5.以下定义语句中正确的是A)int a=b=0;B)char A=65+1,b=′b′;C)float a=1,*b=&a,*c=&b;D)double a=00;b=1.1;6.有以下程序段char ch;int k;ch=′a′;k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII码值为97,则执行上述程序段后输出结果是A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12D)a,97,k=127.有以下程序main(){int i,s=1;for(i=1;i<50;i++)if(!(i%5)&&!(i%3))s+=i;printf("%d\n",s);}程序的输出结果是A)409B)277C)1D)918.当变量c的值不为2、4、6时,值也为"真"的表达式是A)(c==2)||(c==4)||(c==6)B)(c>=2&&c<=6)||(c!=3)||(c!=5)C)(c>=2&&c<=6)&&!(c%2)D)(c>=2&&c<=6)&&(c%2!=1)9.若变量已正确定义,有以下程序段int a=3,b=5,c=7;if(a>b)a=b;c=a;if(c!=a)c=b;printf("%d,%d,%d\n",a,b,c);其输出结果是A)程序段有语法错B)3,5,3C)3,5,5D)3,5,710.有以下程序#include<stdio.h>main(){int x=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;}printf("a=%d,b=%d\n",a,b);}程序的运行结果是A)a=1,b=0B)a=2,b=2C)a=1,b=1D)a=2,b=111.下列程序的输出结果是#include"stdio.h"main(){int i,a=0,b=0;for(i=1;i<10;i++){if(i%2==0){a++;continue;}b++;}printf("a=%d,b=%d",a,b);}A)a=4,b=4B)a=4,b=5C)a=5,b=4D)a=5,b=5已知#int t=0;while(t=1){...}则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对12.下面程序的输出结果是main(){int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf("%d\n",*(p+2));}A)3B)4C)1D)213.以下错误的定义语句是A)int x[][3]={{0},{1},{1,2,3}};B)int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C)int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};D)int x[][3]={1,2,3,4};14.有以下程序void ss(char*s,char t){while(*s){if(*s==t)*s=t-′a′+′A′;s++;}}main(){char str1[100]="abcddfefdbd",c=′d′;ss(str1,c);printf("%s\n",str1);}程序运行后的输出结果是A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbAD)Abcddfefdbd15.有如下程序main(){char ch[2][5]={"6937","8254"},*p[2];int i,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>′\0′;j+=2)s=10*s+p[i][j]-′0′;printf("%d\n",s);}该程序的输出结果是A)69825B)63825C)6385D)69382516.有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句是A)gets(&s[0]);B)scanf("%s",s+1);C)gets(s);D)scanf("%s",s[1]);17.以下叙述中错误的是A)在程序中凡是以"#"开始的语句行都是预处理命令行B)预处理命令行的最后不能以分号表示结束C)#define MAX是合法的宏定义命令行D)C程序对预处理命令行的处理是在程序执行的过程中进行的18.设有以下说明语句typedef struct{int n;char ch[8];}PER;则下面叙述中正确的是A)PER是结构体变量名B)PER是结构体类型名C)typedef struct是结构体类型D)struct是结构体类型名19.以下叙述中错误的是A)gets函数用于从终端读入字符串B)getchar函数用于从磁盘文件读入字符C)fputs函数用于把字符串输出到文件D)fwrite函数用于以二进制形式输出数据到文件20.以下能正确定义一维数组的选项是A)int a[5]={0,1,2,3,4,5};B)char a[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′};C)char a={′A′,′B′,′C′};D)int a[5]="0123";21.有以下程序#include<string.h>main(){char p[]={′a′,′b′,′c′},q[10]={′a′,′b′,′c′};printf("%d%d\n",strlen(p),strlen(q));}以下叙述中正确的是A)在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3B)由于p数组中没有字符串结束符,长度不能确定,但q数组中字符串长度为3C)由于q数组中没有字符串结束符,长度不能确定,但p数组中字符串长度为3D)由于p和q数组中都没有字符串结束符,故长度都不能确定22.有以下程序#include<stdio.h>#include<string.h>void fun(char*s[],int n){char*t;int i,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strlen(s[i])>strlen(s[j])){t=s[i];s[i]:s[j];s[j]=t;}}main(){char*ss[]={"bcc","bbcc","xy","aaaacc","aabcc"};fun(ss,5);printf("%s,%s\n",ss[0],ss[4]);}程序的运行结果是A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc23.有以下程序#include<stdio.h>int f(int x){int y;if(x==0||x==1)return(3);y=x*x-f(x-2);return y;}main(){int z;z=f(3);printf("%d\n",z);}程序的运行结果是A)0B)9C)6D)824.下面程序段的运行结果是char str[]="ABC",*p=str;printf("%d\n",*(p+3));A)67B)0C)字符′C′的地址D)字符′C′25.若有以下定义:struct link{int data;struct link*next;}a,b,c,*p,*q;且变量a和b之间已有如下图所示的链表结构:26.指针p指向变量a,q指向变量c。

c语言试题100道

c语言试题100道

1.按下述格式,从键盘输入一个整数加法表达式:操作数1+操作数2,然后计算并输出表达式的计算结果,形式如下:操作数1+操作数2=计算结果。

(课本62)2.输入两个整形数并打印,如果用户不慎输入了非法字符,那么程序提示“输入数据类型错误”。

(课本68页)3.已知三角形的三边长a,b,c,要求编写程序,从键盘输入a,b,c的值,计算并输出三角形的面积(注意不存在的情况)。

(第三章习题)4.编程从键盘输入圆的半径r,计算并输出圆的周长和面积。

(第三章习题)5.任意从键盘输入一个三位整数,要求正确分离它的个位,十位和百位数,并分别在屏幕上输出。

(课本82)6.写一个函数实现统计一个输入的整形数的位数。

7.编程计算方程ax*x+bx+c=0的根,a,b,c由键盘输入,只是用主函数来实现。

(课本83页,但需综合考虑)8.编写三个函数,分别在b*b-4*a*c大于0、小于0、等于0时进行调用,并输出结果,在主函数中读入a、b、c的值。

9.从键盘输入你和你朋友的年龄,编程判断谁的年龄大,并打印最大者的年龄。

(课本86页)10.从键盘输入一个年份,判断该年是否是闰年,并输出结果。

11.判断某人是否属于肥胖体型。

根据身高与体重因素,医务工作者经广泛的调查分析给出了以下按“体指数”对肥胖程度的划分:体指数t=w/h*h(w为体重,单位为kg,h为身高,单位为m)。

当t<18时,为低体重;当t介于18和25之间时,为正常体重;当t介于25和27之间时,为超重体重;当t≧27时,为肥胖。

编程从键盘输入你的身高h和体重w,根据上式,判断体重类型。

(课本89)12.利用switch语句将百分制成绩转化为五分制成绩。

(课本97)13.利用switch语句将五分制成绩转换成对应分数范围并输出。

14.编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式:操作数1 运算符op 操作数2 计算表达式的值,指定的运算符为加减乘除。

c语言选择题100道

c语言选择题100道

选择一1. 关于main函数的实现,以下写法中必定错误的是( )。

A) main { printf("Hello\n"); }B) main() { printf("Hello\n"); }C) int main() { printf("Hello\n"); }D) void main() { printf("Hello\n"); }2. 关于C语言程序,正确的编程流程应该是:( )。

A) 编辑→保存→编译→运行B) 编译→编辑→运行→保存C) 保存→运行→编辑→编译D) 运行→编译→保存→编辑3. 以下选项中,正确的C语言用户自定义标识符是( )。

A) 123B) AaBbC) a+bD) int4. 以下选项中正确的C语言常量是( )。

A) 0xEfGhB) 'XYZ'C) 12.34e5D) '\5A'5. 以下选项中错误的整型常量是:( )。

A) 123.B) -346C) 0x5AD) 07776. 以下选项中,三种类型都是C语言的基本类型的是( )。

A) int, long, realB) integer, short, doubleC) int, float, charD) int, decimal, char7. 设要定义n为整型变量,定义x为双精度实型变量,正确的语句是( )。

A) int n, double x,B) int n, double x;C) int n; double x;D) int n; double x,8. 变量a与b分别初始为10与20,正确的语句是( )。

A) int a=10, int b=20;B) int a=10, b=20;C) int a=10; b=20;D) int a=10; b=20,9. 设有int n=10; 要求屏幕上显示“n=10”结果,正确的语句是( )。

c语言必做100题

c语言必做100题

c语言必做100题1. 编写一个C程序,输出“Hello, World!”。

2. 编写一个C程序,计算并输出1到100的和。

3. 编写一个C程序,判断一个数是否为素数。

4. 编写一个C程序,将一个字符串反转。

5. 编写一个C程序,实现二分查找算法。

6. 编写一个C程序,实现插入排序算法。

7. 编写一个C程序,实现选择排序算法。

8. 编写一个C程序,实现冒泡排序算法。

9. 编写一个C程序,实现快速排序算法。

10. 编写一个C程序,实现希尔排序算法。

11. 编写一个C程序,将一个二维数组转置。

12. 编写一个C程序,计算一个数的阶乘。

13. 编写一个C程序,实现斐波那契数列。

14. 编写一个C程序,计算两个数的最大公约数。

15. 编写一个C程序,计算两个数的最小公倍数。

16. 编写一个C程序,计算一个数的平方根。

17. 编写一个C程序,计算一个数的立方根。

18. 编写一个C程序,实现矩阵乘法运算。

19. 编写一个C程序,实现字符串的查找和替换。

20. 编写一个C程序,实现栈的基本操作(入栈、出栈、查看栈顶元素)。

21. 编写一个C程序,实现队列的基本操作(入队、出队、查看队首元素)。

22. 编写一个C程序,实现链表的基本操作(插入、删除、倒置)。

23. 编写一个C程序,实现二叉树的前序、中序和后序遍历。

24. 编写一个C程序,实现图的深度优先搜索算法。

25. 编写一个C程序,实现图的广度优先搜索算法。

26. 编写一个C程序,实现最短路径算法(Dijkstra算法或Floyd算法)。

27. 编写一个C程序,实现最小生成树算法(Prim算法或Kruskal算法)。

28. 编写一个C程序,实现拓扑排序算法。

29. 编写一个C程序,实现优先队列。

30. 编写一个C程序,实现哈希表的基本操作(插入、查找、删除)。

31. 编写一个C程序,实现堆的基本操作(插入、删除、查找最大值)。

32. 编写一个C程序,实现最大堆排序算法。

c语言编程题经典100例

c语言编程题经典100例

c语言编程题经典100例下面是经典的c语言编程题100例,每道题目都涵盖了c语言编程的各个方面,包括基本数据类型、条件语句、循环结构、函数与指针等。

通过这100道题目的练习,可以帮助初学者快速掌握c语言编程的基础知识,也有助于进一步深入了解c语言的高级特性。

1. 打印Hello World。

2. 输入一个整数,判断是否为偶数。

3. 输入两个整数,求它们的和、差、积、商和余数。

4. 输入一个整数,求它的绝对值。

5. 输入一个字符,判断它是否为字母。

6. 输入三个整数,找出其中的最大值。

7. 输入一个字符,判断它是否为数字。

8. 输入一个整数,判断它是否为质数。

9. 输入两个字符串,比较它们的大小。

10. 输入一个字符,将它转换为大写或小写。

11. 输入一个浮点数,求它的平方根。

12. 输入一个整数,将它按位取反。

13. 输入一个字符串,翻转它的顺序。

14. 输入一个字符串,统计其中的元音字母个数。

15. 输入一个整数,将它转换为二进制数。

16. 输入两个整数,交换它们的值。

17. 输入一个二维数组,输出它的转置矩阵。

18. 输入一个数组,找出其中的最大值和最小值。

19. 输入一个数组,求它的平均数、中位数和众数。

20. 输入一个数组,判断它是否为回文数。

21. 输入一个字符串,统计其中的单词数量。

22. 输入一个字符串,统计其中的字符数、单词数和行数。

23. 输入两个字符串,判断它们是否为同构字符串。

24. 输入一个字符数组,将它转换为整数。

25. 输入一个浮点数,将它转换为分数。

26. 输入一个浮点数,将它四舍五入到整数。

27. 输入一个字符串,将其中的数字字符替换为其他字符。

28. 输入两个数组,把它们合并成一个新的数组。

29. 输入一个二维数组和一个数值,查找并输出它在二维数组中的位置。

30. 输入一个字符串,判断它是否为回文字符串。

31. 输入两个整数,求它们的最大公约数和最小公倍数。

32. 输入一个表达式,求它的值。

c语言试题100道

c语言试题100道

c语言试题100道1.按下述格式,从键盘输入一个整数加法表达式:操作数1+操作数2,然后计算并输出表达式的计算结果,形式如下:操作数1+操作数2=计算结果。

(课本62)2.输入两个整形数并打印,如果用户不慎输入了非法字符,那么程序提示“输入数据类型错误”。

(课本68页)3.已知三角形的三边长a,b,c,要求编写程序,从键盘输入a,b,c的值,计算并输出三角形的面积(注意不存在的情况)。

(第三章习题)4.编程从键盘输入圆的半径r,计算并输出圆的周长和面积。

(第三章习题)5.任意从键盘输入一个三位整数,要求正确分离它的个位,十位和百位数,并分别在屏幕上输出。

(课本82)6.写一个函数实现统计一个输入的整形数的位数。

7.编程计算方程ax*x+bx+c=0的根,a,b,c由键盘输入,只是用主函数来实现。

(课本83页,但需综合考虑)8.编写三个函数,分别在b*b-4*a*c大于0、小于0、等于0时进行调用,并输出结果,在主函数中读入a、b、c的值。

9.从键盘输入你和你朋友的年龄,编程判断谁的年龄大,并打印最大者的年龄。

(课本86页)10.从键盘输入一个年份,判断该年是否是闰年,并输出结果。

11.判断某人是否属于肥胖体型。

根据身高与体重因素,医务工作者经广泛的调查分析给出了以下按“体指数”对肥胖程度的划分:体指数t=w/h*h(w为体重,单位为kg,h为身高,单位为m)。

当t<18时,为低体重;当t介于18和25之间时,为正常体重;当t介于25和27之间时,为超重体重;当t≧27时,为肥胖。

编程从键盘输入你的身高h和体重w,根据上式,判断体重类型。

(课本89)12.利用switch语句将百分制成绩转化为五分制成绩。

(课本97)13.利用switch语句将五分制成绩转换成对应分数范围并输出。

14.编程设计一个简单的计算器程序,要求15.16.17.少天(考虑闰年),用switch语句编程。

(课本159)(主要是设定一个标志,考虑闰年)18.打印所有的水仙花数。

C语言选择题99道

C语言选择题99道

1.有以下程序int f1(int x,int y){ return x>y?x:y; }int f2(int x,int y){ return x>y?y:x; }main(){int a=4,b=3,c=5,d,e,f;d=f1(a,b); d=f1(d,c);e=f2(a,b); e=f2(e,c);f=a+b+c-d-e;printf("%d,%d,%d\n",d,f,e);}执行后输出的结果是______。

A:3,4,5 B:5,3,4C:5,4,3 D:3,5,4答案:C348、有以下程序int f1(int x,int y){return x>y?x:y;}int f2(int x,int y){return x>y?y:x;} main(){int a=4,b=3,c=5,d=2,e,f,g;e=f2(f1(a,b),f1(c,d));f=f1(f2(a,b),f2(c,d));g=a+b+c+d-e-f;printf("%d,%d,%d\n",e,f,g);}程序运行后的输出结果是______。

A:4,3,7 B:3,4,7C:5,2,7 D:2,5,7答案:A2.设有定义:float a=2,b=4,h=3;,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是______。

A:(a+b)*h/2B:(1/2)*(a+b)*hC:(a+b)*h*1/2D:h/2*(a+b)答案:B3.设有定义:float a=2,b=4,h=3;,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是______。

A:(a+b)*h/2B:(1/2)*(a+b)*hC:(a+b)*h*1/2D:h/2*(a+b)答案:B261、已有定义:char c;,程序前面已在命令中包含ctype.h文件。

不能用于判断c中的字符是否为大写字母的表达式是______。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A:typedef struct {int n; char c;} REC; REC t1,t2; B:struct REC; {int n; char c;}; REC t1,t2; C:typedef struct REC; {int n=0; char c= 'A';}t1,t2; D:struct {int n; char c;} REC; REC t1,t2; 答案:A
294、不能把字符串:Hello!赋给数组b的语句是 ______。
A:char b[10]={'H','e','l','l','0','!'}; B:char b[10]={'h','e','l','l','0','!'}; C:char b[10];strcpy(b,"Hello!"); D:char b[10]="Hello!"; 答案:B
*c=b; } main() {struct STU a={"YangSan",2041},b={"WangYin",2043}; f1(a);f2(&b); printf("%d %d\n",a.num,b.num); } 执行后输出结果是______。
A:2041 2044 B:2041 2043 C:2042 2044 D:2042 2043 答案:A
A:p=1; B:*q=2; C:q=p; D:*p=5; 答案:D
51、有如下程序 main() { int x=1,a=0,b=0;
switch(x){ case 0: b++; case 1: a++; case 2: a++;b++;
} printf("a=%d,b=%d\n",a,b); } 该程序的输出结果是______。 A:a=2,b=1 B:a=1,b=1 C:a=1,b=0 D:a=2,b=2 答案:A
{t=a[i];a[i]=a[j];a[j]=t;} } main() {int aa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&aa[3],5); for(i=0;i<10;i++) printf("%d,",aa[i]); printf("\n"); } 程序运行后的输出结果是______。 A:1,2,3,4,5,6,7,8,9,10, B:10,9,8,7,6,5,4,3,2,1, C:1,2,3,8,7,6,5,4,9,10, D:1,2,10,9,8,7,6,5,4,3, 答案:C
730、假定已建立以下链表结构,且指针p和q已指 向如图所示的结点:
A:(a+b)*h/2 B:(1/2)*(a+b)*h C:(a+b)*h*1/2 D:h/2*(a+b)
答案:B
201、有以下程序 struct STU{
char name[10]; int num; }; void f1(struct STU c) {struct STU b={"LiSiGuo",2042}; c=b; } void f2(struct STU *c) {struct STU b={"SunDan",2044};
137、以下程序中函数sort的功能是对a所指数组 中的数据进行由大到小的排序。 void sort(int a[],int n) {int i,j,t;
119、以下程序的输出结果是______。 #inclue <stdio.h> #inclue <string.h> main() { char b1[8]="goddwer",b2[8],*pb=b1+3;
} 该程序的输出结果是______。
A:不确定的值 B:2 C:1 D:0 答案:D
98、以下程序的输出结果是______。 struct HAR { int x,y;struct HAR *p;} h[2]; main() { h[0].x=1;h[0].y=2;
h[1].x=3;h[1].y=4; h[0].p=&h[1];h[1].p=h;
509、有以下程序 #include <string.h> struct STU {char name[10]; int num; }; void f(char *name, int num) { struct STU s[2]={{"SunDan",20044},{"Penghua",20045}} ; num=s[0].num; strcpy(name,s[0].name); } main() { struct STU s[2]={{"YangSan",20041},{"LiSiGao",20042}},*
260、设有条件表达式:(EXP)?i++:j--,则以下 表达式中与(EXP)完全等价的是______。
A:(EXP==0) B:(EXP!=0) C:(EXP==1) D:(EXP!=1) 答案:B
557、设有定义:int n=0,*p=&n,**q=&p;则以下 选项中,正确的赋值语句是______。
567、有以下程序: void sort(int a[],int n) { int i,j,t;
for(i=0;i<n-1;i+=2) for(j=i+2;j<n;j+=2)
if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;} } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i;
int blue; }; 3、struct color { int red;
int green; int blue; }cl; 4、struct {int red; int green; int blue; }cl; A:1 B:2 C:3 D:4 答案:B
694、以下结构体类型说明和变量定义中正确的是 ______。
6、能正确表示a和b同时为正或同时为负的逻辑表 达式是______。
A:(a>=0||b>=0)&&(a<0|| b<0) B:(a>=0&&b>=0)&&(a<0&&b<0) C:(a+b>0)&&(a+b<=0) D:a*b>0 答案:D
62、有如下程序 main()
{ int n[5] = {0,0,0},i,k = 2; for(i = 0; i < k; i++) n[i] = n[i] + 1; printf("%d\n",n[k]);
f=a+b+c-d-e;
printf("%d,%d,%d\n",d,f,e);
}
执行后输出的结果是______。
A:3,4,5
B:5,3,4
C:5,4,3
D:3,5,4
答案:C
348、有以下程序 int f1(int x,int y){return x>y?x:y;} int f2(int x,int y){return x>y?y:x;} main() {
663、设变量x和y均已正确定义并赋值。以下if语 句中,在编译时将产生错误信息的是______。
A:if(x++); B:if(x>y && y!=0); C:if(x>0) x-else y++; D:if(y<0) {;} else x++; 答案:C
190、设有定义:float a=2,b=4,h=3;,以下C语 言表达式中与代数式1/2(a+b)h计算结果不相符 的是______。
答案:D
533、以下不能正确定义二维数组的选项是______。 A:int a[2][2]={{1},{2}}; B:int a[][2]={1,2,3,4}; C:int a[2][2]={{1},2,3} D:int a[2][]={{1,2},{3,4}}
答案:D
for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(a[i]<a[j])
int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d)); g=a+b+c+d-e-f; printf("%d,%d,%d\n",e,f,g); } 程序运行后的输出结果是______。 A:4,3,7 B:3,4,7 C:5,2,7 D:2,5,7 答案:A
A:*P与str[0]中的值相等 B:str与p的类型完全相同 C:str数组长度和p所指向的字符串长度相等 D:数组str中存放的内容和指针变量p中存放的 内容相同 答案:A
513、以下能正确定义数组并正确赋初值的语句是
______。 A:int N=5,b[N][N]; B:int a[1][2]={{1},{3}}; C:int c[2][]={{1,2},{3,4}}; D:int d[3][2]={{1,2},{3,4}};
printf("%d%d\n",(h[0].p)->x,(h[1].p)->y); }
相关文档
最新文档