您的位置:

c语言复习07118,c语言模拟题百度文库

本文目录一览:

c语言习题 麻烦高手来做一下

14:

1#includestdio.h

main()

{ int i,j;

for(i=0;i9;i++)

{ j=i*10+6;

if(j%3==0)

printf("%d\n",j);

continue;

}

}

2)#includestdio.h

main()

{ int j,s,p,n;

scanf("%d",n);

for(s=p=0,j=1;j=n;j++)

{p=p+j;

s=s+p;

}

printf("%d",s);

}

13

#includestdio.h

void main()

{int i,a,b,c,d,e,n;

for(i=10000;i=99999;i++)

{ a=i/10000;

b=i/1000%10;

c=i/100%10;

d=i/10%10;

e=i%10;

if (a==eb==d)

printf("%-8d",i);

n++;

}

if(n%5==0) printf("\n");

}

12

#include stdio.h

void main()

{

long int num;

int indiv,ten,hundred,thousand,tenthousand,place;

printf("请输入一个整数(0-99999):");

scanf("%ld",num);

if(num9999)

place=5;

else if(num999)

place=4;

else if(num99)

place=3;

else if(num9)

place=2;

else place=1;

printf("place=%d\n",place);

printf("每位数字为:");

tenthousand=num/10000;

thousand=(num-tenthousand*10000)/1000;

hundred=(num-tenthousand*10000-thousand*1000)/100;

ten=(num-tenthousand*10000-thousand*1000-hundred*100)/10;

indiv=num-tenthousand*10000-thousand*1000-hundred*100-ten*10;

switch(place)

{case 5: printf("%d,%d,%d,%d,%d",tenthousand,thousand,hundred,ten,indiv);

printf("\n反序数字为:");

printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,tenthousand);

break;

case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);

printf("\n反序数字为:");

printf("%d%d%d%d\n",indiv,ten,hundred,thousand);

break;

case 3:printf("%d,%d,%d\n",hundred,ten,indiv);

printf("\n反序数字为:");

printf("%d%d%d\n",indiv,ten,hundred);

case 2:printf("%d,%d\n",ten,indiv);

printf("\n反序数字为:");

printf("%d%d\n",indiv,ten);

case 1:printf("%d\n",indiv);

printf("\n反序数字为:");

printf("%d\n",indiv);

}

}

11

#includestdio.h

main()

{ int n;

printf("请输入 ASCII码值:\n");

scanf("%d",n);

if(n32)

printf("这是一个控制字符");

else if(n=48n=57)

printf("这是一个数字");

else if(n=65n=90)

printf("这是一个大写字母");

else if(n=97n=122)

printf("这是一个小写字母");

}

10

main()

{

long int i;

int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;

scanf("%ld",i);

bonus1=100000*0.1;

bonus2=bonus1+100000*0.075;

bonus4=bonus2+200000*0.05;

bonus6=bonus4+200000*0.03;

bonus10=bonus6+400000*0.015;

if(i=100000)

bonus=i*0.1;

else if(i=200000)

bonus=bonus1+(i-100000)*0.075;

else if(i=400000)

bonus=bonus2+(i-200000)*0.05;

else if(i=600000)

bonus=bonus4+(i-400000)*0.03;

else if(i=1000000)

bonus=bonus6+(i-600000)*0.015;

else

bonus=bonus10+(i-1000000)*0.01;

printf("bonus=%d",bonus);

}

9

#includestdio.h

main()

{ int n;

printf("请输入年份:\n");

scanf("%d",n);

if((n%400==0)||(n%4==0)(n%100!=0))

printf("这一年是闰年\n");

else

printf("这一年不是闰年\n");

}

c语言复习题

1. main()函数

2. main()函数

3. 8

4. 1字节

5. 9

6. '\0'

7. x=2,n=6

8. 非0值

9. x*y*z0(x0||y0||z0)

10. -264(该死的杂种才会出这种变态烂题)

11. 1

12. a[0]、a[1]、a[2]

13. 6

14. 行下标的的下限为0,列下标的上限为4

15. 题目有误,对P宏重定义。如果宏定义如下:

#define Q 2

#define P Q+4

那么i=P*2,i的值是10

16. 换行 退格

17. 5.5

18. 1

19. a[2]元素 2

20. 1

21. a=1,b=2,c=3(之后按回车)

22. 9

23. 10

24. C语言只有一种调用方式:__cdecl式(从右至左的顺序压参数入栈)

我猜这个题目应该是说调用函数时参数的传递方式吧?有传值和传址两种(实际上都是传值)

25. char a[10]="friend";

计算机二级C语言考试要怎么复习?

1、理论考试一共60分。

(1)计算机基础题20分,主要为大学计算机信息技术这门课所学计算机基础知识,全部为单选题,每题1分。

(2)C语言知识题40分。单选题10分(每题1分),一般考的都是基础知识;填空题30分,每空1分,其中5分为基础知识填空,25分为语言运用填空(比如:递归、排序、二维数组、单链表等知识点读程序填写题)。

2、上机考试一共40分,分两道题。

(1)改错题(18分):一般为4个错误,包括语法错误(如数组的声明与初始化错误、函数定义错误等)、运行错误(如缺少头文件)、逻辑错误(如==写成=号,给字符数组名赋值等)。

(2)编程题(22分):编程题一般要求编写两个函数,涉及到算法的应用(比如:排序、回文数问题等)。一般编程题考得最多的是数字处理问题,一般只能平时多积累,多上机编程与调试。

二、如何准备二级C语言考试

其实二级考试目前趋势:考点越来越广,而题目难度越来越简单。

1、重视理论考试中计算机基础知识的20分题目

该部分占总分的20%(20分),占理论考试分的33.3%(20/60分)。由于该部分知识是当年计算机一级考试题目,且都是单选题。这些分比C语言部分拿起来更容易,因此,一定要重视计算机基础知识题,复习时只要将大学计算机信息技术期末考试前老师发的题库好好做,弄懂了,争取拿到18-20分。

2、C语言理论知识准备。应有计划针对考点地做一些往年的二级考试真题。重要的考点包括:递归、二维数组、结构体、排序与查找、字符串处理、单链表、递推法、穷举法、方程求根、静态局部变量、变量作用域、宏定义与宏替换等。

3、上机考试准备。

(1)应将学校C语言课程实验中做过的程序全部弄懂,也就是会自己根据题目变化能再编写出来。

(2)要多找一些往年的真题来调试,不断体会其中错误之处的提示;往年的编程题应该找来自己编编,如果实在编不出来也没关系,就对照着答案看,看懂了,自己再关上书编写出来也可以。

(3)平时应该好好积累一些基本功能实现的小程序编写方法,这些小程序可以称为“基本动作”,而上考试编程题往往会利用2-3个这样的基本动作进行有机整合就能编写出来。这些“基本动作”包括:判断素数、判断回文数、判断水仙花数、直接选择排序、二分查找、求反序数、同一数组元素逆置、求某数的(真)因子之和、字符串中插入/删除字符或子串、单链表的建立、单链表的查找/检索、单链表的输出、单链表中插入/删除一个结点、一或二维数组找极值(最大值或最小值)、进制转换(如:十进制整数转换成二进制,八、十六进制与二进制互相转换)、求最大公约数和最小公倍数等。

(4)做改错题时,一定要利用好上机考试前那几分钟,可以好好看看改错题(注意试卷发给你后不要去看其他的,只看改错的程序),如果能找出几个错误,应该很好。此时找错误应从:函数形参与实参的对应,主函数中字符串或数组定义与初始化部分,字符串赋值、比较等处找错误。开始输入程序时,不要求快,一定要准确,不然因你自己输入造成的错误会给你后面调试程序造成很大麻烦。

(5)编程题编写的过程:先编写主函数,因为主函数比较简单,有些比如打开文件、写文件、关闭文件部分是固定的,另一按题目要求一步步写应该很容易写出主函数;其次再编程自定义函数,编写时一定要注意这样的顺序:从框架到填写每个空,这样大空填成小空,填着填着就编得差不多了。

C语言复习资料!

总体上必须清楚的:

1)程序结构是三种: 顺序结构 , 循环结构(三个循环结构), 选择结构(if 和 switch)

2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

3)计算机的数据在电脑中保存是以 二进制的形式. 数据存放的位置就是 他的地址.

4)bit是位 是指为0 或者1。 byte 是指字节, 一个字节 = 八个位.

5)一定要记住 二进制 如何划成 十进制。

概念常考到的:

1、编译预处理不是C语言的一部分,不再运行时间。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。

2、每个C语言程序中main函数是有且只有一个。

3、在函数中不可以再定义函数。

4、算法的是一定要有输出的,他可以没有输入。

5、break可用于循环结构和switch语句。

6、逗号运算符的级别最低。

第一章

1)合法的用户标识符考查:

合法的要求是由字母,数字,下划线组成。有其它元素就错了。

并且第一个必须为字母或则是下划线。第一个为数字就错了。

关键字不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。

2)实型数据的合法形式:

2.333e-1 就是合法的,且数据是2.333×10-1。

考试口诀:e前e后必有数,e后必为整数。.

3)字符数据的合法形式::

'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。

4) 整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节:

考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节就可以了。

5)转义字符的考查:

在程序中 int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x必须存在。

在程序中 int a = 06d, 是一个八进制的形式。

在转义字符中,’\x6d’ 才是合法的,0不能写,并且x是小写。

‘\141’ 是合法的, 0是不能写的。

‘\108’是非法的,因为不可以出现8。

6)算术运算符号的优先级别:

同级别的有的是从左到右,有的是从右到左。

7)强制类型转换:

一定是 (int)a 不是 int(a),注意类型上一定有括号的。

注意(int)(a+b)和(int)a+b 的区别。 前是把a+b转型,后是把a转型再加b。

8)表达式的考查:

是表达式就一定有数值。

赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。

自加、自减表达式:假设a=5,++a(是为6), a++(为5);

运行的机理:++a 是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这

个++a表达式的数值为6,而a++是先用该表达式的数值为5,然后再把a的数值加上1为6,

再放到变量a中。 进行了++a和a++后在下面的程序中再用到a的话都是变量a中的6了。

考试口诀:++在前先加后用,++在后先用后加。

逗号表达式:优先级别最低 ;表达式的数值逗号最右边的那个表达式的数值。

(2,3,4)的表达式的数值就是4。

9)位运算的考查:

会有一到二题考试题目。

总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。

例1: char a = 6, b;

b = a2; 这种题目的计算是先要把a的十进制6化成二进制,再做位运算。

例2: 一定要记住,

例3: 在没有舍去数据的时候,左移一位表示乘以2;右移一位表示除以2。

10)018的数值是非法的,八进制是没有8的,逢8进1。

11)%符号两边要求是整数。不是整数就错了。

12) 三种取整丢小数的情况:

1、int a =1.6;

2、(int)a;

3、

第二章

1)printf函数的格式考查:

%d对应整型;%c对应字符;%f对应单精度等等。宽度的,左对齐等修饰。

%ld对应 long int;%lf 对应double。

2)scanf函数的格式考察:

注意该函数的第二个部分是a 这样的地址,不是a;

Scanf(“%d%d%*d%d”,a,b,c); 跳过输入的第三个数据。

3)putchar ,getchar 函数的考查:

char a = getchar() 是没有参数的,从键盘得到你输入的一个字符给变量a。

putchar(‘y’)把字符y输出到屏幕中。

4)如何实现两个变量x ,y中数值的互换(要求背下来)

不可以把 x=y ,y=x; 要用中间变量 t=x;x=y;y=t。

5)如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)

这个有推广的意义,注意 x = (int)x 这样是把小数部分去掉。

第三章

特别要注意:c语言中是用非0表示逻辑真的,用0表示逻辑假的。

1)关系表达式:

表达式的数值只能为1(表示为真),或0(表示假)

当关系的表达是为真的时候得到1。如 98这个是真的,所以表达式的数值就是1;

2)逻辑表达式:

只能为1(表示为真),或0(表示假)

a) 共有 || ! 三种逻辑运算符号。

b) !|| 优先的级别。

c) 注意短路现象。考试比较喜欢考到。

d) 要表示 x 是比0大,比10小的方法。0x10是不可以的(一定记住)。是先计算0x 得到的结果为1或则0;再用0,或1与10比较得到的总是真(为1)。所以一定要用 (0x)(x10)表示比0大比10小。

3)if 语句

else 是与最接近的if且没有else的相组合的。

4)条件表达式:

表达式1 ?表达式2 :表达式3

注意是当非0时候是表达式2的数值,当为0是就是表达式2的数值。

考试口诀:真前假后。

5)switch语句:

a)一定要注意 有break 和没有break的差别,书上(34页)的两个例子,没有break时候,只要有一个case匹配了,剩下的都要执行,有break则是直接跳出了swiche语句。

b)switch只可以和break一起用,不可以和continue用。

第四章

1)三种循环结构:

a)for() ; while(); do- while()三种。

b)for循环当中必须是两个分号,千万不要忘记。

c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。

d) do-while()循环的最后一个while();的分号一定不能够丢。(当心上机改错)

2) break 和 continue的差别

记忆方法:

break:是打破的意思,(破了整个循环)所以看见break就退出真个一层循环。

continue:是继续的意思,(继续循环运算),但是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。

3)嵌套循环

就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐心的计算,一般记住两层是处理二维数组的。

4) while((c=getchar())!=’\n’) 和 while(c=getchar() !=’\n’)的差别

先看a = 3 != 2 和 (a=3)!=2 的区别:

(!=号的级别高于=号 所以第一个先计算 3!=2) 第一个a的数值是得到的1;第二个a的数值是3。

考试注意点: 括号在这里的重要性。

第五章

函数:是具有一定功能的一个程序块;

1) 函数的参数,返回数值(示意图):

main()

{

int a = 5,b=6,c;

c = add(a,b);

printf(“%d”,c);

}

调用函数

a,b是实参

整个函数得到一个数值就是

Add函数的返回数值。

int add ( int x, int y)

{

int z;

z=x+y;

return z;

}

被调用函数

x,y是形式参数

函数返回数值是整型

z就是这个add函数计算后得到的结果,就是函数返回给主程序的返回数值。

程序是在从上往下顺序执行,当碰到了函数add后,把a,b的数值穿给调用函数,程序暂时中断等待返回数值。当得到了返回数值后,再顺序的往下执行

2)一定要注意参数之间的传递

实参和形参之间 传数值,和传地址的差别。(考试的重点)

传数值的话,形参的变化不会改变实参的变化。

传地址的话,形参的变化就会有可能改变实参的变化。

3)函数声明的考查:

一定要有:函数名,函数的返回类型,函数的参数类型。

不一定要有:形参的名称。

第六章

指针变量的本质是用来放地址,而一般的变量是放数值的。

int *p 中 *p和p的差别:

*p可以当做变量来用;*的作用是取后面地址p里面的数值

p是当作地址来使用。

*p++ 和 (*p)++的之间的差别:改错题目中很重要

*p++是 地址会变化。

(*p)++ 是数值会要变化。

三名主义:(考试的重点)

数组名:表示第一个元素的地址。数组名不可以自加,他是地址常量名。(考了很多次)

函数名:表示该函数的入口地址。

字符串常量名:表示第一个字符的地址。

第七章

1一维数组的重要概念:

对a[10]这个数组的讨论。

1、a表示数组名,是第一个元素的地址,也就是元素a[10]的地址。

2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。

3、a是一维数组名,所以它是列指针,也就是说a+1是跳一列。

对a[3][3]的讨论。

1、a表示数组名,是第一个元素的地址,也就是元素a[10]的地址。

2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。

3、a是二维数组名,所以它是行指针,也就是说a+1是跳一行。

4、a[0]、a[1]、a[2]也都是地址常量,不可以对它进行赋值操作,同时它们都是列指针,a[0]+1,a[1]+1,a[2]+1都是跳一列。

5、注意a和a[0] 、a[1]、a[2]是不同的,它们的基类型是不同的。前者是一行元素,后三者是一列元素。

二维数组做题目的技巧:

如果有a[3][3]={1,2,3,4,5,6,7,8,9}这样的题目。

步骤一:把他们写成: 第一列 第二列 第三列

a[0]à 1 2 3 -第一行

a[1]à 4 5 6 —第二行

a[2]à 7 8 9 -第三行

步骤二:这样作题目间很简单:

*(a[0]+1)我们就知道是第一行的第一个元素往后面跳一列,那么这里就是a[0][1]元素,所以是1。

*(a[1]+2)我们就知道是第二行的第一个元素往后面跳二列。那么这里就是a[1][2]元素,所以是6。

一定记住:只要是二维数组的题目,一定是写成如上的格式,再去做题目,这样会比较简单。

数组的初始化,一维和二维的,一维可以不写,二维第二个一定要写

int a[]={1,2} 合法。 int a[][4]={2,3,4}合法。 但int a[4][]={2,3,4}非法。

二维数组中的行指针

int a[1][2];

其中a现在就是一个行指针,a+1跳一行数组元素。 搭配(*)p[2]指针

a[0],a[1]现在就是一个列指针。a[0]+1 跳一个数组元素。搭配*p[2]指针数组使用

还有记住脱衣服法则:

a[2] 变成 *(a+2) a[2][3]变成 *(a+2)[3]再可以变成 *(*(a+2)+3)

这个思想很重要!

此日志来自QQ校友社区(xiaoyou.qq

大一期末C语言考试的重点是什么??

我上点选择题

1、以下不正确的描述为【 】。

(A) 调用函数时,实参可以是表达式

(B) 调用函数时,实参与形参可以共用内存单元

(C) 调用函数时,将为形参分配内存单元

(D) 调用函数时,实参与形参的类型必须一致

2、以下正确的叙述是【 】。

(A) C语言的主函数是无参函数

(B) C语言的主函数最多允许有1个形式参数

(C) C语言的主函数最多允许2个形式参数

(D) C语言的主函数可以有2个以上形式参数

3、C语言中函数返回值的类型是由【 】决定的。

(A) return语句中的表达式类型

(B) 调用该函数的主调函数类型

(C) 调用函数时临时

(D) 定义函数时所指定的函数类型

4、若x为int型变量,则以下函数fun【 】。

fun(int x)

{

printf("%d",x);

}

(A) 返回值为void类型

(B) 无法确定返回值

(C) 返回值为int类型

(D) 没有返回值

5、以下不正确的描述为【 】。

(A) 不同函数中可以使用相同名字的变量

(B) 形式参数是局部变量

(C) 一个函数内部定义的变量只能在本函数范围内有效

(D) 在一个函数内部的复合语句中定义的变量可以在本函数范围内有效

6、C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是【 】。

(A) 地址传递

(B) 值传递

(C) 由实参传给形参,并由形参传回来给实参 十

(D) 由用户指定传递方式

7、若用数组名作为函数调用时的实参,则实际上传递给形参的是【 】。

(A) 数组首地址

(B) 数组的第一个元素值

(C) 数组中全部元素的值

(D) 数组元素的个数

8、凡是函数中未指定存储类别的变量,其隐含的存储类别为【 】。//应该为局部变量

(A) 自动(auto)

(B) 静态(static)

(C) 外部(extem)

(D) 寄存器(register)

9、在C语言中,对于存储类型为【 】的变量,只有在使用它们时才占用内存单元。

(A) static和auto

(B) register和extern

(C) register和static

(D) auto和register

10、在一个源文件中定义的全局变量的作用域为【 】。

(A)本文件的全部范围

(B)本程序的全部范围

(C)本函数的全部范围

(D)从定义变量的位置开始至文件结束

11、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别为【 】。

(A)extern

(B)register

(C)auto

(D)static

12、以下不正确的描述为【 】。

(A)在函数之外定义的变量称为外部变量,外部变量是全局变量

(B)在一个函数中既可以使用本函数中的局部变量,又可以使用全局变量

(C)外部变量定义和外部变量说明的含义不同

(D)若在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量不起作用

13、以下正确的函数定义形式是【 】。

(A)double fun(int x,int y)

(B)double fun(int x; int y)

(C)double fun(int x,int y);

(D)double fun(int x,y);

14、以下说法正确的是【 】。

(A) 实参和与其对应的形参各占用独立的存储单元

(B) 实参和与其对应的形参共占用一个存储单元

(C) 只有当实参和与其对应的形参同名时才共用存储单元

(D) 形参是虚拟的,不占用存储单元

15、若调用一个函数,且此函数中没有return语句,则正确的说法是【 】。

(A) 没有返回值

(B) 返回若干个系统默认值

(C) 能返回一个用户所希望的函数值

(D) 返回一个不确定的值

16、以下叙述正确的是【 】。

(A )定义函数时,形参的类型说明可以放在函数体内

(B) return后边的值不能为表达式

(C) 如果函数的类型与返回值类型不一致,以函数类型为准

(D) 如果形参与实参的类型不一致,以实参类型为准

17、以下程序有语法性错误,有关错误的原因的正确说法是【 】。

main( )

{int G=5,K;

void Prt_char();

……

K=Prt_char(G);

……

}

(A) 语句void prt_char();有错,它是函数调用语句,不能用void说明

(B) 变量名不能使用大写字符

(C) 函数说明和函数调用语句之间有矛盾

(D) 函数名不能使用下划线

18、以下正确的描述是【 】。

(A) 函数的定义可以嵌套,但函数的调用不可以嵌套

(B) 函数的定义不可以嵌套,但函数的调用可以嵌套

(C) 函数的定义和函数的调用均不可以嵌套

(D) 函数的定义和函数的调用均可以嵌套

19、以下说法正确的是【 】。

如果在一个函数中的复合语句中定义了一个变量,则该变量

(A) 只在该复合语句中有效

(B) 在该函数中有效

(C) 在本程序范围内均有效

(D) 为非法变量说明

20、以下程序的正确运行结果是【 】。

f(int a)

{int b=0; static int c=3;

b++; c++;

return(a+b+c);

}

main()

{int a=2,i;

for(i=0;i3;i++) printf("%4d",f(a));

}

(A) 7 7 7 (B) 7 10 13

(C) 7 9 11 (D) 7 8 9

21、请选择正确的运行结果填入【 】中。

#include stdio.h

fun(int x,int y)

{static int m=0,i=2;

i+=m+1;

m=i+x+y;

return(m);

}

main()

{

int j=4,m=1,k;

k=fun(j,m);

printf("%d,",k);

k=fun(j,m);

printf("%d\n",k);

}

(A) 08, 20 (B) 8, 8 (C) 8, 17 (D) 8, 16

22、请选择正确的运行结果填入【 】中。

#include stdio.h

int x,y;

num( )

{

int a=15,b=10;

int x,y;

x=a-b;

y=a+b;

return;

}

main( )

{int a=7,b=5;

x=a+b;

y=a-b;

num( );

printf("%d,%d\n",x,y);

}

(A) 12,2 (B) 5,25 (C) 2,12 (D)不确定

一、填空题

1、一个C语言程序的语句至少应包含一个______。

2、C语言源程序文件的扩展名是______,经过编译、连接后,生成文件的扩展名是______。

3、结构化程序由顺序结构、______和______三种基本结构组成。

4、C语言的执行是从______开始执行的。

5、C源程序的语句分隔符是______。

6、在C语言中,用关键字______定义单精度实型变量。

7、表达式S=12应当读做“______”。

8、C语言源程序的基本单位是______。

9、设int x=9,y=8;表达式x-=y+1的结果是______。

10、若a为整型变量,a=12,则表达式:a * =2+3的值______。

11、调用C语言对输入输出处理的库函数时,在# include命令行中应包含的头文件是______。

12、表达式9%5的结果是______。

13、若a为整型变量,a=12,则表达式:a+=4的值______。

14、 在C语言中,要求运算数必须是整型的运算符是______。

15、在C语言中,用______表示逻辑“真”值。

16、7、表达式10/3的结果是______。

17、通常一个字节包含______个二进制位。

18、 假设所有变量均为整型,a=2,b=5,b++则表达式a+b的值是______。

19、在C语言中,最基本的数据类型只有四种,它们分别是:______、______、______和double。

20、一个C程序有且仅有一个______函数。

21、若a为整型变量,a=12,则表达式:a-=2的值______。

22、在C语言中,有三种逻辑运算符,它们分别是:______、______、______。

23、在C语言中,字符输入函数和字符输出函数分别是:______和______。

24、C程序开发的四个步骤是______、______、______和执行。

25、C程序的结构分别是:顺序结构、______、______。

26、if语句中的表达式可以是关系表达式、______、______。

27、______是C语言中惟一一个三元运算符。

28、C语言提供的预处理命令主要包括如下三种:宏定义、______、______。