搜档网
当前位置:搜档网 › 常见c语言基础知识

常见c语言基础知识

常见c语言基础知识
常见c语言基础知识

第一篇 C语言程序设计

习题二

一、简答题

1.常量有哪几类?如何使用u、l、f对它们进行修饰?

2.字符常量与字符串常量之间的区别是什么?

3.运算符&&与&、||与|、!与~之间有什么不同?

4.表达式在计算时,其类型如何确定?

5.C语言中,如何实现类型的转换?

二、选择题

1.以下字符串可以为用户定义的标示符的是。

A. short

B. LINE 5

C. next day

D. _my

2.设c是字符变量,则以下表达式正确的是。

A. c=1234

B. c='c'

C. c=" c"

D. c="abcd" 3.类型修饰符unsinged不能修饰下面的类型。

A. int

B. char

C. long

D. double

4.下列正确的字符常量是。

A. ' \234'

B. ' \af'

C. " a"

D. ' a' 5.下列不正确的字符串常量是。

A. " hello\n"

B. "world\0"

C. " hello\tworld\n"

D. " world" 6.表达式12+’b’-45.5f的结果是类型。

A. int

B.char

C. float

D. double

7.下面4个选项中,均是C语言关键字的是。

A. enum, switch, float, define

B. for, int, default, scanf

C. switch, union, auto, type

D. unsigned, double, case , if

8.以下选项中不正确的整型常量是_____。

A. 12L

B. -10

C. 1,900

D. 123U

9.以下选项中不正确的实型常量是 。

A. 0.23E

B.

2.3e-1 C. 1E

3.2 D. 2.3e0

10.表达式______的值是0。

A .3%5 B. 3/5.0 C.3/5 D.3<5

11.若变量a 、b 、c 已正确赋值,不符合C 语言语法的表达式是 。

A. a=a/7

B. a=7+b-c, a++

C. a+b=c+b

D. (int)(12.3%3)

12.整型变量x=1,y=3,经下列计算后,x 的值不等于6的是 。

A. x=(x+2,x*2)

B. x=x>y?x*2:y*2

C. x=y/2*6

D. x=(y++)+(y--)

13.有如下定义:

int i=1;

long w=5;

double x=3.4,y;

则以下符合C 语言语法的表达式是 。

A. i+=i*=i=34;

B. w=i*3=12

C. i=x%3

D. y=double(i);

14.表示关系式z y x ≥≥的C 语言表达式为 。

A. x>=y>=z

B. (x>=y)and(y>=x)

C. (x>=y)&&(x>=z)

D. (x>=y)&&(y>=z)

15.有如下定义:

float f=23;

int n=2,m=5;

选出合法的表达式。

A. m>>n

B. f | n

C. ~ (f*m+n)

D. f & m

16.有如下定义:

enum COLOR{RED,WHITE, GREEN=3,BLACK}c1=RED,c2=BLACK;

则下列哪些表达式有错。

A. c1=BLUE

B. c1*3+5*c2

C. c2=3

D. c1=(enum COLOR) 4 17.有如下定义:

int i=5,j=2,k=0;

下面表达式的值为5的是。

A. i++

B. ++i

C. i/j--

D. k=k ? i : i-j 18.下列运算符中,优先级最高的是。

A. ( )

B. ++

C.

&& D. =

19.表达式sizeof(“\nsum=%d\n”)的值是。

A. 8

B. 9

C.

10 D. 11

20.表达式!(x>0&&y>0)等价于。

A. ! (x>0) || ! (y>0)

B. !x>0 || !y>0

C. !x>0 && !y>0

D. !(x>0) && ! (y>0)

三、计算下列表达式的值。

1. 已知:int a=12,n=5;

(1) a+=a (2) a-=2 (3) a*=2+6

(4) a/=a+n (5) a%=%(n%=2) (6)a+=a-=a*=a/=n 2. 已知:int i=10, j=5,k=4;

(1) (i++)-j-- (2) i+(++j)+(k++)-(--i) (3) j=i*=k%j-- 3. 已知:int m=5,n=3;

(1) !m&&n++ (2) m||n+3&&n*m (3) m=1,n=2,m>n? ++m:++n

(4) ++n, m=12, m+n (5) m!=n>2<=m+1

4. 已知:int a=2,b=3; float x=3.5,y=2.5;

(1) x+a%3*(int)(x+y)%2/4 (2) (float)(a+b)/2+(int)x%(int)y 5. 已知:字符'0'的ASCII 码为48。

(1) ('9'+4)%3+5%'5' (2) ('7' - '0')/3+4

(3) 8==3<=2&5 (4)6>=3+2-('1' - '7')

四、写出下面式子的C 语言表示形式。

1.132++x x

2.()

2

2ny mx d cy b ax +?++ 3.

35423+++x x x (求平方根使用库函数sqrt()) 4.

()()42cos 35.0sin 2+++x x

5.z b

a b y

a a x

a

+++

6.()()函数,请参考附录三、、使用标准库函数ln()exp()(),1ln 3labs x e x +-

习题三

一、简答题

1.程序控制的基本结构有哪些?它们如何执行?

2.C语言中,语句有哪几类?

3.C程序的基本结构是什么?有什么特点?

4.scanf( )、getchar( )与gets( )函数作为输入函数它们区别是什么?5.printf( )、putchar( )与puts( )函数作为输出函数它们有什么不同?

二、选择题

1.若有语句:int a,b,c;

则下面输入语句正确的是。

A. scanf(" %D%D%D",a, b, c);

B. scanf("%d%d%d",a,b,c);

C.scanf("%d%d%d",&a,&b,&c);

D. scanf("%D%D%D",&a,&b,&c);

2.以下能正确定义变量m、n,并且它们的值都为4的是。

A. int m=n=4;

B. int m, n=4;

C.m=4,n=4;

D. int m=4,n=4;

3.若由如下语句:

unsigned a;

float b;

以下能正确输入数据的语句是。

A. scanf("%d%6.2f",&a,&b);

B. scanf(" %c%f",&a,&b);

C.scanf("%u%f",&a&b);

D. scanf(" %d%d",&a,&b);

4.有如下语句:

int k1,k2;

scanf("%d,%d",&k1,&k2);

要给k2、k2分别赋值12和34,从键盘输数据的格式应该是。

A. 12 34

B. 12,34

C. 1234

D. %12,%34

5.int m=546, n=765;

printf(" m=%-6d,n=%6d",m,n);

则输出的结果是。

A. m=546,n=765

B. m=546 ,n= 765

C. m=%546,n=%765

D.m= 546,n=765

6.有如下程序,输入数据25,12,14↙之后,正确的输出结果是。main( )

{

int x,y,z;

scanf(" %d%d%d",&x,&y,&z);

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

}

A. x+y+z=51

B.x+y+z=41

C.x+y+z=60

D.不确定值

7.有如下程序:

main( )

{

int x;

float y;

scanf("%3d%f",&x,&y);

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

}

其输入数据为12345 678↙,则输出结果为。

A. x=12345,y=678

B. x=123,y=45

C. x=12345,y=678.000000

D. x=123,y=45.000000

8.有如下语句:

int a,b;

scanf("%*4d%2d%4d",&a,&b);

printf("a=%d,b=%d",a,b);

假如输入的数据为9876543210↙,则输出为。

A. a=9876,b=54

B. a=9876,b=3210

C.a=54,b=3210

D. a=98,b=7654

9.有以下语句:

char c1,c2;

c1=getchar(c1); c2=getchar(c2);

putchar(c2);putchar(c1);

若输入为:a,b↙,则输出为。

A. a,

B.a,b

C. b,a

D. b,

10.有定义:long d;double f;要正确输入,应使用的语句是。

A. scanf("%ld%lf",&d,&f);

B.scanf("%ld%ld",&d,&f);

C.scanf("%ld%f",&d,&f);

D.scanf("%d%lf",&d&f);

三、编程实现下列各题。

1.从键盘上输入2个整数,输出较小的数。

2.从键盘上输入一个浮点数,将其结果保留两位小数输出。

3.从键盘输入一字符,依次输出其前导字符、该字符和后续字符。

4.从键盘输入三角形三边(假定能够成三角形),求三角形的周长和面积。已

知三边求面积的公式为:

()()()()c

b

a

l

c

l

b

l

a

l l

s+

+

=

-

-

-

=

2

1

,

习题四

一、简答题

1.数组中的元素具有什么共同点?

2.在C语言中,数组下标的引用范围如何规定?

3.数组的初始化与赋值的异同。

4.一般数组与字符数组的异同。

二、选择题

1.在C语言中定义数组时,数组长度要求是。

A. 整型常量

B. 整型表达式

C. 大于0的整型常量表达式

D.一般表达式

2.对于一维整型数组a,正确地说明是。

A. int a[10];

B.int a(10);

C. int n=10, a[n];

D. int n;

scanf(" %d",&n);

int a[n];

3.若有说明:

#define N 5

float b[N];

则对数组b中元素引用正确的是。

A. b[N]

B. b[5]

C. b[0]

D.b(4) 4.给出以下定义:

char x[ ]= "hello";

char y[ ]={ ' h', 'e', 'l', 'l', 'o'};

则正确的说法是。

A. 数组x和y等价;

B. 数组x的长度大于数组y的长度;

C. 数组x和数组y的长度相等;

D. 数组x的长度小于数组y的长度;5.以下对二维数组正确说明的是。

A. double d[][12];

B. double d(2)(12);

C. double d[2][ ];

D. double d[2][12];

3 二维整型数组a,其最后一个元素为。6.定义了一个4

A. a[3][4]

B. a[2][3]

C.a[3,4]

D.a[2,3]

7.以下能对数组正确初始化的是。

A. int a[5]={2,3,4,5,6,1};

B. int a[ 5]={ };

C. int a[5]={2,3,4};

D.int a[]={ };

8.若二维数组b有m列,则在a[i][j]前面的元素个数有。

A. i*m+j-1

B.i*m+j

C. j*m+i

D.j*m+i-1

9.以下正确定义的语句是。

A.double d[][4]={1,2,3,4,5,6,7,8};

B.double d[2][]={1,2,3,4};

C.char c[][3]={ ' x', 'y', 'z'};

D.float f[][2]={{1,2},{3,4},{5,6,7}};

10.有如下的定义:

double dd[][3]={1,2,3,4,5,6,7,8};

则第一维的长度为。

A. 2

B. 3

C. 4

D.不能确定

11.有定义:

int b[3][4]={{1,2}{3,4,5},{6,7}};

则b[2][2]的值为。

A. 4

B.7

C.0

D. 5

12.下述对C语言中字符数组描述错误的是。

A. 字符数组可存放字符串;

B. 字符数组中的字符串可以整体输入输出;

C. 可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值;

D. 对于两个字符数组中字符串得比较,可以通过库函数strcmp()实现。

三、编写程序

1.从键盘输入两个字符串,比较长短,将较长的输出,如果两个字符串长度相同,输出较大的字符串。

2.从键盘输入两个字符串s1和s2,将s2连接在s1之后,构成一个新的字符串输出。

习题五

1.根据输入的圆锥体的底面半径r和高h,计算与圆锥体的表面积和体积。

2.编程实现:

()

()

()?

?

?

?

?

<

-

=

> =

x

1

x

x

1

y

3.根据输入的整数,判断该数能否被3、5、7整除,并根据以下情况输出:(1)只能被其中一个数整除;(2)能同时被两个数整除;

(3)能同时被3个数整除;(4)不能被任何一个数整除;

4. 根据输入的三角形三边的边长a 、b 、c ,判断能否构成三角形。若能,计算

三角形的面积。

5. 输入二次方程的三个系数m 、n 、k ,根据系数方程有实根还是有虚根,并分

别计算。二次方程的形式为:

02=++k nx mx 6. 从键盘输入一个四则运算的表达式,根据表达式计算其结果并输出。如键盘

输入的是:4+7,应输出结果11。

7. 从键盘输入若干个整数,其值在1~5之间,统计每个数出现的次数。输入数

据的个数由用户确定。

8. 根据输入n 的值,求n!。

9. 有一序列:2/1、3/2、5/3、8/5、13/8、21/13、……,求这个序列的前30

项之和。

10. 编一程序统计几个学生平均年龄和平均成绩,要求通过键盘输入每个学生

的年龄和成绩,直到输入年龄为-1为止。

11. 输入10个数,请输出其中的最大值、最小值,并统计整数、负数、零的

个数。

12. 根据输入的n ,计算并输出n n -3,3。

13. 根据用户输入的整数,把每位上的数字转换成对应的英文。如123,转换

为one two three 。

14. 利用下面公式计算π的值: ()1211715131

11--++-

+-=-n n π,当6

10121-<-n 为止。 15. 在1~500中,找出能同时满足用3除余2,用5除余3,用7除余2的所

有整数,并求出它们的和。

16. 输入一字符串,以'!'作为结束标志,统计其中的字母个数,数字个数,

其他字符的个数。

17. 输出下面图形:

18.编一程序绘制下图:

19.读入一个算术表达式,以“;”结束。该表达式中只包含小括号,统计表达式中小括号的是否配对,给出信息。如果出错,是左括号多于右括号、右括号多于右括号还是右括号先出现。

20.求一个不超过5位数字的整数其各位数字之和。

21.编写程序,从键盘输入10位同学的5门课成绩,统计每位学生的平均成绩,并按平均成绩排序输出。

3 矩阵中最大及最小元素及其下标。

22.编程求出一个3

23.一个已经从大到小排好序的数组,根据键盘输入的选择:1—插入数据到数组,并保持数组中的元素的大小顺序;2—删除元素,保持数组元素都在开头位置。插入和删除的元素都由键盘输入。

24.有一个字符串,包含n个字符,编程序实现:将此字符串中从第m个字符开始的全部字符复制成另一个字符串。

习题六

1. 编写程序,求出输入的三个正整数的最小公倍数和最大公约数。

2. 编写程序,求出满足下列条件的四位数:该数是一个完全平方数,且第一、

第三位数字之和为10,第二、第四位数字之积为12。

3. 编写程序,求出在100到300之间的数,它们满足条件:三位数字之积为

42,三位数字之和为12。

4. 输出1~999中能被3整除且至少有一位数字是5的所有整数。

5. 已知abc+cba=1333,其中a 、b 、c 均为一位数,例如:617+716=1333,试

编程求出符合这一规律的a 、b 、c ,并输出结果。

6. 编写程序,利用下面公式求e 的值。

时为止。!当6101,!1!21!111-<+++++=n n e 7. 求100~999中的水仙花数(若三位数abc 满足abc c b a =++333,则称为水

仙花数)。

8. 一个数如果正好等于他的因子之和,这个数称之为完数。例如6的因子有1、

2、3,而6=1+2+3,因此6就是完数。编程找出1000以内的所有完数,并按下列格式输出结果:6 its factors are 1,2,3.

9. 求出2~1000中的所有同构数(若一个数的平方,其低位和该数本身相同,

则称为同构数,例如5就是同构数,2552=,25的低位的5与原数相同)。

10.一个人摘下一些桃子,卖掉一半,又吃了一个;第二天卖掉剩下的一半,又

吃了一个;第三天、第四天、第五天都如此进行,第六天一看,只剩下一个桃子,问该人共摘了多少桃子?

11.编程实现n 阶逆时针外螺旋矩阵。如5阶的外螺旋矩阵为:

????????????????25242322211098720112161912345181314151617

12.编写完成2位数以内的整数四则运算练习程序。具体过程是:

(1)计算机任意出一道2位以内整数四则运算;

(2)操作者键入答案;

(3)计算机判断结果:如果正确,显示“very good!”,出下一道题;如果不正确,显示“try again!”,在给下一次机会,如果再次输入正确,显示“it’s right!”,出下一道题;如果还不正确,显示“error!”,出下一道题。

程序要求:执行一次能练习10道题,总分100分,每题10分,第一次答对者给予10,第二次答对者给予5分。10道全部做完后,给出总分并按等级显示。其等级为:100—满分,90~99—优秀,80~89—优良,70~79—良好,60~69—及格,0~59—不及格。

提示:用随机函数random( )来产生两个操作数和运算符,函数说明为:

int random(int n):产生0~n-1之间的随机整数。

13.用筛数法求N以内素数,要求筛掉的数不能再在程序中出现。

14.某省规定月工资1500元以下者免所得税,超过1500元在1000元以内超过部分征所得税5%,超过2500元在2000元以内超过部分征收所得税7%,超过4500元在4000元以内超过部分征收所得税10%,以后每超过5000元,所得税增长5%,但最多不超过50%,编一所得税征收程序。

要求:(1)用嵌套的条件语句;

(2)用循环语句;

15.有2N个随机排列的整数,其中N个奇数,N个偶数。现要求将其排列成奇偶相间的序列,且奇数序列和偶数序列的相对顺序不变。例如:原序为1,7,6,4,3,8,2,9新序应为1,7,3,9,6,4,2,8。

16.已知如第14题,除了要求奇偶相间外,还要求奇数和偶数分别按升序排列。

如上面的例子,新序列为:1,2,3,4,7,6,8,9。

17.有2N面随机排放的红绿彩旗(各N面),要求排成红绿间隔形式并且交换次数最少。

18.有随机排放的红、黄、蓝三种花(带花盆),红的M盆,黄的N盆,蓝的K 盆。要求将它们按红、黄、蓝顺序重新排放,即前M盆为红花,中间N盆为黄花,后面K盆为蓝花,且要求交换的次数最少。请编程实现。

19.有18颗大珍珠串成一圈,其重量分别为:5克、6克、6.2克、6.5克、6.1 克、7克、8克、8.7克、5.4克、5.1克、6.3克、7.5克、9克、10克、8.1

克、12克、11.5克、9.5克。请从中取出一段(颗数不限),所取段最接近50克。

习题七

一、选择题

1.以下说法正确的是。

A.C语言规定,可执行程序总是从main函数开始执行;

B.在程序中,main函数必须写在最开始的部分;

C.可执行程序总是从第一个定义的函数开始执行;

D.在C语言中,main函数调用的函数必须在main函数中定义。2.C语言程序中,以下说法正确的是。

A.函数的定义可以嵌套,但函数的调用不能嵌套;

B.函数的调用可以嵌套,但函数的定义不能嵌套;

C.函数的定义和调用都可以嵌套;

D.函数的定义和调用都不能嵌套。

3.C语言中,下列叙述正确的是。

A.实参和对应的形参各占用独立的存储单元;

B.实参和对应的形参共用同一个存储单元;

C.形参是虚拟的,不占用存储单元;

D.只有当实参和对应的形参同名时才共用同一个存储单元。4.在C语言中,下列说法正确的是。

A.实参可以是常量、变量或表达式;

B.实参可以是任意类型;

C.形参可以是常量、变量或表达式;

D.实参的个数可以多于形参的个数。

5.对于return语句说法正确的是。

A.return语句只能出现在函数的结尾部分;

B.return语句可以在一个函数中出现多次;

C.return语句必须返回值;

D.main函数中不能使用return语句。

6.以下正确的函数原型是。

A. int fun(int x, y);

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

C. int fun[int x, int y];

D. int fun(int ,int ); 7.C语言中允许函数类型缺省定义,此时该函数的类型是。A. int B. double C. char D. float

8.从下面函数调用语句中可看出实参的个数为。

fun((a,b,c),d,(0,1,2) );

A. 1

B. 3

C. 5

D. 7

9.下面程序的运行结果是。

void add(int a,int b)

{

int sum;

sum=a+b;

}

main( )

{

int sum=0;

add(4,5);

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

}

A. 9

B. 0

C. 4

D. 无定值

10.下面程序运行的结果是。

int fun( int n)

{

int s=0,t=1,i;

for(i=1; i

{ s+=t;

t*=2;

}

return s;

}

main( )

{

printf("%d\n",fun(6));

}

A. 64

B. 32

C.31

D.63

11.凡是函数中未指定存储类别的局部变量,其隐含的存储类别是。

A. auto

B. static

C. extern

D. register

12.下面程序的运行结果是。

long func(int i)

{

c语言公共基础知识

二级公共基础知识总结 第一章数据结构与算法 1.1 算法算法:是指解题方案的准确而完整的描述。算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括: (1)可行性; (2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性; (3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义; (4)拥有足够的情报。算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。指令系统:一个计算机系统能执行的所有指令的集合。基本运算包括:算术运算、逻辑运算、关系运算、数据传输。算法的控制结构:顺序结构、选择结构、循环结构。算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。算法复杂度:算法时间复杂度和算法空间复杂度。算法时间复杂度是指执行算法所需要的计算工作量。算法空间复杂度是指执行这个算法所需要的内存空间。 1.2 数据结构的基本基本概念数据结构研究的三个方面: (1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;

(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构; (3)对各种数据结构进行的运算。数据结构是指相互有关联的数据元素的集合。数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。数据的存储结构有顺序、链接、索引等。线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。非线性结构:不满足线性结构条件的数据结构。 1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。非空线性表的结构特征:(1)且只有一个根结点a1,它无前件; (2)有且只有一个终端结点an,它无后件; (3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。结点个数n称为线性表的长度,当n=0时,称为空表。线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。ai的存储地址为:ADR(ai)=ADR(a1)+(i-1)k,,ADR(a1)为第一个元素的地址,k代表每个元素占的字节数。顺序表的运算:插入、删除。 (4)1.4 栈和队列栈是限定在一端进行插入与删除的线性表,允许

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语言基础知识及考点整理

第一周 int定义整型变量所有字母都要先定义再使用。 算法:描述完成任务的步骤序列。 算法的三个基本结构:顺序、分支、循环。 算法的表示:自然语言、程序流图、N-S图 程序流图中判定框用菱形,开始结束用圆角矩形,赋值用矩形。 main:主函数,后面一定是英文输入法下的() int:定义“整形变量” printf:输出语句 scanf:输入语句 %:占位符一个占位符就是占据一个字符的位置,格式化输出时显示为个空格. 具体用法如下: %a,%A 读入一个浮点值(仅C99有效) %c 读入一个字符 %d 读入十进制整数 %i 读入十进制,八进制,十六进制整数 %o 读入八进制整数%x,%X 读入十六进制整数 %s 读入一个字符串,遇空格、制表符或换行符结束。 %f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。 %p 读入一个指针 %u 读入一个无符号十进制整数 %n 至此已读入值的等价字符数 %[] 扫描字符集合

%% 读%符号(c此内容来自baidu) &:“取地址”运算符:这个运算发可以这样理解,比如说&a的含义就是a在内存中的地址。因为&运算符能够取出一个变量在内存中的地址,所以叫做取地址运算符。 输入语句scanf("%d %d",&a,&b); 输出语句printf("%d", c); 输出内容由“”引出 注意一个;就是一个语句,每句话后都要有分号,不能丢。括号是英文的, 一个程序主要由顺序分支循环3种结构构成 { }不能忘,限制变量作用范围 进入CodeBlocks之后新建一个项目,在project选项中选择控制台应用程序Console application进行编写。 输入语句scanf和输出语句printf中的“f”指的是format格式。 程序编写完成后点击Build——Build and run 或F9进行运行,并可点击View——log看到编程日志,检查错误。 分号;不能少 .如果觉得编写过程中字符显示太小可以按住ctrl并将鼠标滚轮向下滚来放大~ 第二周 计算一元二次方程的根的题目中,遵守四则运算法则,求根公式.../2a中的2a要用()括起来 华氏温标(Fahrenheit temperature scale)符号℉,1724年,德国人华伦海特制定了华氏温标,他把一定浓度的盐水凝固时的温度定为0℉,把纯水凝固时的温度定为32 ℉,把标准大气压下水沸腾的温度定为212℉,中间分为180等份,每一等份代表1度,这就是华氏温标,用符号F表示,这就是华氏温度 摄氏温度(℃)和华氏温度(℉)之间的换算关系为: 华氏度(℉)=32+摄氏度(℃)×,摄氏度(℃)=(华氏度(℉)-32)÷。

学习C语言的必备基础知识

学习C语言的必备基础 知识 Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】

学习C语言的必备基础知识 热45已有 4055 次阅读2010-01-06 02:24 这个是我自编的C语言教材的第一章,主要分两个部分,一个是计算机组成及工作原理,一个是信息的数字化.有什么不足的,大家可以补充,也可以提些建议. 第一章计算机和数据的存储 第一节了解计算机 很奇怪的一件事,现在的C语言教材,一上来就是变量,表达式,一点也不提计算机原理方面的事,把C语言当作语言,数学来学,只是生硬的列出一些语法规则,学生们难以理解,只好死记硬背,没有把握住本质的东西,也就无法随心所欲,其实C语言是一门非常好学的语言,核心的语法规则是非常少的,而且都是和计算机息息相关,所以必须要学习好计算机的一些基础,掌握好计算机的基础知识对学习C语言至关重要,对将来其它语言的编程都极其有益,C语言还有一个优点,就是写法非常简洁明了,和c++,java,C#, javascript等语言有着非常相似的书写方式,所以学好C语言,可以轻松的过渡到大量其它编程语言。讲完C以后,将陆续推出java ,C#,C++, javascript,ruby,python等,不过都是在此教程的基础之上进行,所以C语言乃基础之基础,想要学编程,强烈建议从C语言开始。 下面开始了解计算机。

按照冯诺依曼的理论,计算机含有5个部分,运算器、控制器、存储器、输入和输出设备。现在我们通常把运算器、控制器和在一起,称为CPU(中央处理器),存储器就是我们说的内存和硬盘,输入设备就是鼠标,键盘等,输出设备主要是显示器、打印机、绘图仪等。 其中CPU和内存最关键,CPU是执行指令的部件,内存是一些连续的存储单元,用来存储指令和数据,每个单元可以存8位二进制数,也称为1个字节,计算机里存储器都是以字节为单位的,在描述网络速度的时候通常以位为单位,大家注意区别。CPU要执行的指令就存在内存里,CPU按照指定顺序连续地执行内存中的指令,这就是冯诺依曼体系的基本工作原理。 什么是指令传送,计算,跳转,其实我们的编程语言也就能完成这些功能。其中传送主要是管理存储器,管理数据如何存储,是最重要的,计算比较简单,主要是数学计算,跳转让计算机有了智能。 什么是数据,数据可以是要计算的数字,也可以是一篇文章,一幅画,一首歌,这些东西必须先存到内存里,才能让CPU传送到显卡,声卡,我们才能听见看见。在内存里指令和数据是分开存放的,我们在编写程序时用到的内存通常是指存储数据用的数据区,在一条指令里,往往也分操作码和操作数,操作数也是一种数据,只不过它是指令的一部分,存储在指令区,这种数据称为操作数,以后也会用到。 什么是程序,程序就是由一批指令和数据组合在一起构成的二进制数据集。但如果要用二进制来写程序,那估计肯定有人骂街了,我们通常用能看懂的字母和阿拉伯数字来写程序,第一种被发明的编程语言叫汇编语言,它给每个二进制指令都给起了一个英文名字,叫做助记码,我们用助记码写起程序来

C语言基础知识总复习考前突击专用

C语言基础知识总复习(考前突击专用) 总体上必须清楚的: 1)程序结构是三种:_顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式?数据存放的位置就是他的地址. 4)bit是位是指为0或者1。byte是指字节,一个字节=八个位? 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 & break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第0

第一章C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉VC++ 1、VC是软件,用来运行写的C语言程序。 2、 每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---?.obj---?.exe ) 这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!)第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。

谭浩强C语言知识点总结

谭浩强C语言知识点总 结 文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)

C语言最重要的知识点总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。 byte 是指字节, 一个字节 = 八个位.概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI ; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章 C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个main函数,是程序运行的起点。

第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---?.obj---?.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!) 第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 用户标识符:基本上每年都考,详细请见书上习题。 第四节:进制的转换 十进制转换成二进制、八进制、十六进制。 二进制、八进制、十六进制转换成十进制。 第五节:整数与实数 1)C语言只有八、十、十六进制,没有二进制。但是运行时候,所有的进制都要转换成二进制来进行处理。(考过两次)

C语言基础知识整理

C 语言基础知识 1. 每个C 程序有且只有一个主函数main() ,且程序必须从main() 函数开始执行,并在main() 函数中结束。 2. 在C语言中,用e来表示科学计数法时,规定在e的前面必须有数字,后面必须为整数。 3. 用单引号括起来的一个字符常量只能存放一个字符;C 语言中没有字符串变量,只能用字符数组来存储字符串。 4. 外部变量在编译时由系统分配永久的内存空间,所以外部变量的类型不是自动存储类别。 5. 在一个函数内的复合语句中定义的变量,只能在这个复合语句范围内有效。 6. 用sizeof(int) 计算int 类型数据的字节数。 7. C语言运行时,首先系统检查语法的正误,再运行程序的语法;C语言中,可以在一个函数中嵌套一个函数,但是不能在一个函数中定义一个函数;只有在函数外部定义的函数才是外部函数;C语言的子程序有过程和函数两种。 8. 预处理命令行的位置没有规定,只是习惯放在前面;在源文件中的可以有多条预处理命令,但一行只能写一条;宏名的大写只是习惯性的表示;宏替换不仅不占用运行时间还不分配内存空 间。 9. feo f函数的作用是检查文件是否结束,当结束时返回的值为非零,否则为零。 10. 当定义了数组后,在给其赋值时,不能直接把字符串赋给数组名。 11. 在赋值表达式中,赋值运算符"=”右侧不能为表达式;在求余运算符中的两侧都必须为整型;在强制类型转换时,类型名应用括号括起来。 12. 静态局部变量,只有当程序结束后,其值才释放。 13. 当调用函数时,实参是一个数组名,则向函数传送的是数组每一个元素的地址。 14. 算法的特点为有零个或多个输入,有一个或多个输出,当相同的输入时,其结果相同;算法 正确的程序最终一定会结束。15. 在 C 语言中,预处理命令行都以“#”开头;当需要时才用 #include; 预处理的作用就是实现宏定义和条件编译。16. 当数组元素的下标超出了定义 的下标范围时,系统不给出“下标越界”的字样,而是得出错误的答案,因此在编程时务必检查下标是否越界。 17. 共用体变量不能作为函数的参数,也不能使函数带回共用体变量。 18. 指向函数的指针变量的定义形式为:数据类型(* 指针变量)();,因此其为指向函数的 指针变量。 19. 用C 语言编写的代码程序是源程序,只有通过编译、连接才能进行。 20. 在说明为static 时,其生存期得到延长,而其作用域并没有改变,在定义后系统会自动帮它赋值为0,static 为关键字不能被用作它用。 21. 频繁地使用空语句会降低程序的可读性和运算速度。22. 运算符%两边都应是整数,赋值语 句左边应该是变量,而非表达式,强制转换语句强制类型应加括号。 23. 在逻辑运算符中,其两侧的运算符对象为任意合法的表达式即可。 24. 函数fread (&larray,2,16,fp)的功能是,从fp所指的数据文件中读取16次2字节的数据 存储到数组larray中。25.整个流式文件也可以随机存取数据,C语言文件中有好多函数可以达 到写入数据时,未经输入数据,达到不覆盖的目的,在进行写操作时,系统会自动关闭文件。 26. 使用putchar、getchat、puts、gets、printf、seanf函数时,必须在程序的开头岀现包含头文件 #inelude "stdio.h ”的命令行,而使用字符串处理函数时,必须在程序的开头岀现包含头文件 #include”string.h ”命令行,而使用数学函数时,必须在程序的开头岀现包含头文件#include”math.h” 的命令行。 27. 一个斜杠与小于等于127 任意数字按一个字符计算,一个斜杠与任意一个字符按一个字符计 28. 一个C 程序可以有一个或多个程序文件,也可以有一个或多个函数,所以一个C 语言程序可以实现

《C语言程序设计》基本知识点

《C语言程序设计》教学基本知识点 第一章C语言基本知识 1.C源程序的框架 尽管各个C源程序的功能千变万化,但框架是不变的,主要有:编译预处理、主函数()、函数n()等,主函数的位置不一定在最前面,可以在程序的中部或后面,主函数的名字固定为main。 2.C语言源程序的书写规则: (1)C源程序是由一个主函数和若干个其它函数组成的。 (2)函数名后必须有小括号,函数体放在大括号内。 (3)C程序必须用小写字母书写。 (4)每句的末尾加分号。 (5)可以一行多句。 (6)可以一句多行。 (7)可以在程序的任何位置加注释。 3.语句种类 语句是程序的基本成分,程序的执行就是通过一条条语句的执行而得以实现的,根据表现形式及功能的不同,C语言的基本语句可以分为五大类。 (1)流程控制语句 流程控制语句的功能是控制程序的走向,程序的流程有三种基本结构:顺序结构、分支结构和循环结构,任何复杂的程序都可以由这三种基本结构复合而成。其中后两种结构要用特定的流程控制语句实现。 (2)表达式语句 表达式语句的形式是:表达式;,即表达式后跟一分号“;”,分号是语句结束符,是一个语句必不可少的成分。表达式和表达式语句的区别在于表达式代表的是一个数值,而表达式语句则代表一种动作。最常见的表达式语句是赋值语句。 (3)函数调用语句 函数调用语句实际上也是一种表达式语句,形式为:在一次函数调用的小括号后面加上一个分号。 (4)空语句 空语句的形式就是一个分号,它不代表任何动作,常常作为一个意义转折点使用。 (5)复合语句 复合语句从形式上看是多个语句的组合,但在语法意义上它只相当于一个语句,在任何单一语句存在的地方都可以是复合语句。注意复合语句中最后一个语句末尾的分号不能少。复合语句右大括号后面没有分号。 4.运算符 用来表示数据各种操作的符号称为运算符。运算符实际上代表了一种类型数据的运算规则。不同的运算符具有不同的运算规则,其操作的数据类型必须符合该运算符的要求,运算结果的数据类型也是固定的。 根据参加操作的数据个数多少,可以将C语言的运算符分为单目运算符,双目运算符和三目运算符(三目运算符只有条件运算符一个)。 根据运算对象和运算结果的数据类型可分为算术运算符、关系运算符、逻辑运算符等。 5.表达式 表达式是由常量、变量、函数,通过运算符连接起来而形成的一个算式。一个常量,一个变量或一个函数都可以看成是一个表达式。 表达式的种类有: 算术表达式、关系表达式、逻辑表达式、赋值表达式、字位表达式、强制类型转换表达式、逗号

最新c语言基础知识总结汇总

c语言基础知识总结

C语言知识要点复习资料 总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。 byte 是指字节, 一个字节 = 八个位. 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章 C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。

3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---→.obj---→.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!) 第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 用户标识符:基本上每年都考,详细请见书上习题。 第四节:进制的转换 十进制转换成二进制、八进制、十六进制。 二进制、八进制、十六进制转换成十进制。 第五节:整数与实数

C语言基础知识

常量和变量 1.常量: 程序执行过程中,值不变的量。 3 ,'a' 变量:值可以改变的量。 一个变量有一个名字,在内存中有一定的存储单元,存放变量的值。 2.常量类型: a.整型:12,0,-3 b.实型:4.6,-1.2 c.字符型: 'a','d' d.符号常量: #define PRICE 30 (PRICE不能再被赋值且要大写) 3.变量: 先定义,后使用。一个变量只能被指定为一确定类型。 4.标识符:标识变量名,符号常量名,函数名,数组名,类型名,文件名的有效字符数列。 a.由字母、数字、下划线三种字符组成,第一个字符必须为字母或下划线。 b.大写字母、小写字母被认为是两个不同的字符。 c.长度一般小于8个。 数据类型 一.整型: 1.整型常量 a.十进制:12,-3,0 b.八进制:以0开头。 c.十六进制:以0x开头。 2.整型变量 a. int -32768——32767 b. short int -32768——32767 c. long int d. unsigned int 0——65535 e. unsigned short 0——65535 f. unsigned long int、short int、long int 第一位为符号位 0000001 (0为正,1为负) unsigned 第一位不是符号位 0000001 所以int型和unsigned型的000001不是同一个值。 二.实型: 1.实型常量:

a.十进制数:数字和小数点组成。0.12,.12,12.0,0.0 b.指数:e之前必须有数字,e后面必须为整数。12e3 2.实型变量: a.单精度:float 7位有效数字 111111.1可,111111.11不可。 b.双精度:double 15—16位有效数字。 三.字符型: 1.字符常量: a. 'a' , 'x' , '*' ,'$' 。 b. 转义字符:‘\n'换。 '\t'从第九列开始。'\r'回车。 '\b'退一格。 2.字符变量: char char='a' 一个字符变量在内存占一个字节。 。将一个字符常量放到一个字符变量中,并不是把该字符本身放到内存单元中去,而是将该字符的ASC码 放到存储单元中,所以字符型数据和整型数据之间可以通用。一个字符型数据既可以以字符形式输出, 又可以以整数形式输出。 四.字符串常量: "how are you", "a","&12" 。不能把一个字符串赋给一个字符变量。 char c='a'对,char c="how" 错。 。'a' :在内存中存a。 “a”:在内存中存a\0。 ‘\0’是C语言中判断字符串是否结束的标志。 变量赋初值 a. int a=3; float f=7.2; char c='a'; b. int a,b,c=5; 相当于 int a,b,c; c=5; c. int a=3;b=3;c=3; 不可写: int a=b=c=3;

c语言基础知识总结

C语言最重要的知识点复习资料 这个a版本,还会进行改正和补充,请大家认真熟悉这些基础知识! 总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。 byte 是指字节, 一个字节 = 八个位. 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI ; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章 C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。

3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 (.c---.obj---.exe) 2、每个C语言程序写完后,都是先编译,后链接,最后运行。 这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!)第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 用户标识符:基本上每年都考,详细请见书上习题。 第四节:进制的转换 十进制转换成二进制、八进制、十六进制。 二进制、八进制、十六进制转换成十进制。 第五节:整数与实数 1)C语言只有八、十、十六进制,没有二进制。但是运行时候,所有的进制都要转换成二进制来进行处理。(考过两次) a、C语言中的八进制规定要以0开头。018的数值是非法的,八进制是没

大学c语言必背基础知识_c语言基础知识大全

大学c语言必背基础知识_c语言基础知识大全 对于刚学计算机编程的同学来说,没一个编程知识都觉得很重要,其实不是的。下面小编为大家整理了相关大学c语言必背基础知识,希望大家喜欢。 大学c语言必背基础知识举例说明: printf(“-”,123 ); 第二部分有三位,大于指定的两位,原样输出123 printf(“]”,123 ); 第二部分有三位,小于指定的五位,左边补两个空格123 printf(“f”,1.25 ); 小数要求补足6位的,没有六位的补0,。结果为1.250000 printf(“%5.3f”,125 ); 小数三位,整个五位,结果为1.250(小数点算一位) printf(“%3.1f”,1.25 );小数一位,整个三位,结果为1.3(要进行四舍五入) 第三节数据输入1、scanf(“a=%d,b=%d”,">2、scanf(“%d,%d”,x,y);这种写法绝对错误,scanf的第二个部分一定要是地址!scanf(“%d,%d”,注意写成这样才可以! 3、特别注意指针在scanf的考察例如:int x=2;int *p=scanf(“%d”,x); 错误scanf(“%d”,p);正确scanf(“%d”,错误scanf(“%d”,*p)错误 4、指定输入的长度(考试重点)终端输入:1234567scanf(“-M%d”,x为12,y为3456,z为7终端输入:1 234567 由于1和2中间有空格,所以只有1位给xscanf(“-M%d”,x 为1,y为2345,z为67 5、字符和整型是近亲:int x=97;printf(“%d”,x); 结果为97printf(“%c”,x); 结果为a 6、输入时候字符和整数的区别(考试超级重点) scanf(“%d”,这个时候输入1,特别注意表示的是整数1 scanf(“%c”,这个时候输入1,特别注意表示的是字符‘1’ASCII为整数48。 补充说明: 1)scanf函数的格式考察: 注意该函数的第二个部分是scanf(“%d%d%*d%d”,跳过输入的第三个数据。 2)putchar ,getchar 函数的考查:

C语言基础知识归纳

C语言基础知识 1.每个C程序有且只有一个主函数main(),且程序必须从main() 函数开始执行,并在main()函数中结束。 2.在C语言中,用e来表示科学计数法时,规定在e的前面必 须有数字,后面必须为整数。 3.用单引号括起来的一个字符常量只能存放一个字符;C语言中 没有字符串变量,只能用字符数组来存储字符串。 4.外部变量在编译时由系统分配永久的内存空间,所以外部变 量的类型不是自动存储类别。 5.在一个函数内的复合语句中定义的变量,只能在这个复合语 句范围内有效。 6.用sizeof(int)计算int类型数据的字节数。 7.C语言运行时,首先系统检查语法的正误,再运行程序的语法; C语言中,可以在一个函数中嵌套一个函数,但是不能在一个函数中定义一个函数;只有在函数外部定义的函数才是外部函数;C语言的子程序有过程和函数两种。 8.预处理命令行的位置没有规定,只是习惯放在前面;在源文 件中的可以有多条预处理命令,但一行只能写一条;宏名的大写只是习惯性的表示;宏替换不仅不占用运行时间还不分配内存空间。 9.feof函数的作用是检查文件是否结束,当结束时返回的 值为非零,否则为零。

10.当定义了数组后,在给其赋值时,不能直接把字符串赋给数 组名。 11.在赋值表达式中,赋值运算符“=”右侧不能为表达式;在 求余运算符中的两侧都必须为整型;在强制类型转换时,类型名应用括号括起来。 12.静态局部变量,只有当程序结束后,其值才释放。 13.当调用函数时,实参是一个数组名,则向函数传送的是数组 每一个元素的地址。 14.算法的特点为有零个或多个输入,有一个或多个输出,当相 同的输入时,其结果相同;算法正确的程序最终一定会结束。 15.在C语言中,预处理命令行都以“#”开头;当需要时才用 #include;预处理的作用就是实现宏定义和条件编译。 16.当数组元素的下标超出了定义的下标范围时,系统不给出“下 标越界”的字样,而是得出错误的答案,因此在编程时务必检查下标是否越界。 17.共用体变量不能作为函数的参数,也不能使函数带回共用体 变量。 18.指向函数的指针变量的定义形式为:数据类型(*指针变量) ();,因此其为指向函数的指针变量。 19.用C语言编写的代码程序是源程序,只有通过编译、连接才 能进行。 20.在说明为static时,其生存期得到延长,而其作用域并没有改

第1章 C语言基本知识

第一章C语言基本知识 一、C语言的产生和发展 1、C语言的发展源于人们希望用高级语言编写操作系统。(C-BCPL第二字母)ALGOL60(高级语言)->CPL(硬件支持)-BCPC->B->C->标准C->ANSI C->ISO C 2、语言既具有高级语言特性,又具有低级语言特性-中级语言。 二、C语言的特点 1、语言简明、紧凑、使用方便、灵活。 2、运算符丰富。 3、数据结构丰富,具有现代化语言的各种数据结构。 4、具有结构化的控制语句。 5、语法限制不太严格,程序设计自由度大。 6、C语言允许直接访问物理地址,能实现汇编语言的大部分功能,可以直接对硬件进行操作。 7、生成目标代码质量高,程序执行效率高。 8、用C语言写的程序可移植性好。 三、C程序的基本规则 1、C程序由函数构成。(亦称为函数语言。) 2、C程序中每条语句都用一个分号结尾,分号是C程序语句的必要组成部分,语句最后的分号不能省略。 3、每个C程序都有一个主函数(main()),且只有一个主函数。并且程序是从主函数开始执行的。 4、调用C语言的标准函数通常要在程序开头使用包含命令include,C程序中的命令不用分号结尾。 5、C程序中的变量必须先定义,后使用。 6、C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写,同一字母的大小写被作为两个不同的字符。 7、C程序中可以用“/*……*/”的形式加注释。 8、C程序书写格式自由,一行内可以写几条语句,一条语句可以写在多行。 9.一个函数包含两个部分: (1)函数的说明部分。包括函数名,函数类型,函数属性,函数参数名等。 如:int max(x,y) int x,y; 函数名后必须跟一对圆括弧,函数参数可以没有,如:main()。 (2)函数体。

C语言基础知识测试题

基础知识测试题一.单项选择题 1.以下不正确的C语言标识符是() A.ABC B.abc C.a_bc D.ab.c 2.以下正确的C语言标识符是(C) A.%x B.a+b C.a123 D.test! 3.一个C语言程序的执行是从()。 A.main()函数开始,直到main()函数结束 B.第一个函数开始,直到最后一个函数结束 C.第一个语句开始,直到最后一个语句结束 D.main()函数开始,直到最后一函数结束 4.在C语言程序中,main()的位置()。 A.必须作为第一个函数 B.必须作为最后一个函数 C.任意 D.必须放在它所调用的函数之后 5.一个C语言程序是由()。 A.一个主程序和若干个子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 6.C语言源程序的基本单位是()。 A.过程 B.函数 C.子程序 D.标识符 7.编辑程序的功能是()。 A.建立并修改程序 B.将C源程序编译成目标程序 C.调试程序 D.命令计算机执行指定的操作 8.C编译程序是()。 A.C语言程序的机器语言版本 B.一组机器语言指令. C.将C源程序编译成目标程序的程序 D.由制造厂家提供的一套应用软件 9.不属于字符型常量的是() A.'A' B."B" C.'\n' D.'\x72' 10.设char ch;以下正确的赋值语句是:() A.ch='123'; B.ch='\xff'; C.ch='\08'; D.ch="\"; 11.以下使i的运算结果为4的表达式是() A.int i=0,j=0; (i=3,(j++)+i);

B.int i=1,j=0; j=i=((i=3)*2); C.int i=0,j=1; (j==1)?(i=1):(i=3); D.int i=1,j=1; i+=j+=2; 12.若t为double类型,表达式t=1,t+5,t++的值是() A.1 B.6.0 C.2.0 D.1.0 13.设整型变量m,n,a,b,c,d均为1,执行“(m=a>b)&&(n=a>b)”后m,n的值是() A.0,0 B.0,1 C.1,0 D.1,1 14.执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为() A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,2 15.若a=1,b=2,c=3,d=4,则条件表达式a

C语言基础知识(详细版)

C语言程序的结构认识 用一个简单的c 程序例子,介绍c 语言的基本构成、格式、以及良好的书写风格,使小伙伴对 c 语言有个 初步认识。 例1:计算两个整数之和的c 程序: #include main() { int a,b,sum; /* 定义变量a,b ,sum 为整型变量*/ a=20; /* 把整数20 赋值给整型变量a*/ b=15; /* 把整数15 赋值给整型变量b*/ sum=a+b; /* 把两个数之和赋值给整型变量sum*/ printf( “ a=%d,b=%d,sum=%d\n” ,a,b,sum); /* 把计算结果输出到显示屏上*/ } 重点说明: 1、任何一个c 语言程序都必须包括以下格式: main() { } 这是c 语言的基本结构,任何一个程序都必须包含这个结构。括号内可以不写任何内容,那么该程序将不执行任何结果。 2、main() - 在c 语言中称之为“主函数” ,一个c 程序有且仅有一个main 函数,任何一个c 程序总是从 main 函数开始执行,main 函数后面的一对圆括号不能省略。 3、被大括号{ }括起来的内容称为main 函数的函数体,这部分内容就是计算机要执行的内容。 4、在{ }里面每一句话后面都有一个分号(; ),在c 语言中,我们把以一个分号结尾的一句话叫做一个 c 语 言的语句,分号是语句结束的标志。 5、printf( “ a=%d,b=%d,sum=%d\n” ,a,b,sum); 通过执行这条c 语言系统提供给我们直接使用的屏幕输出 函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果: a=20,b=15,sum=35 6、#include 注意:(1)以#号开头 (2)不以分号结尾这一行没有分号,所以不是语句,在c 语言中称之为命令行,或者叫做“预编译处理命令” 。 7、程序中以/* 开头并且以*/ 结尾的部分表示程序的注释部分,注释可以添加在程序的任何位置,为了提高程序的可读性而添加,但计算机在执行主函数内容时完全忽略注释部分,换而言之就是计算机当做注释部分不存在于主函数中。 C程序的生成过程 C程序是先由源文件经编译生成目标文件,然后经过连接生成可执行文件。 源程序的扩展名为.c ,目标程序的扩展名为.obj , 可执行程序的扩展名为.exe 。

C语言最重要的知识点总结

C语言最重要的知识点 总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。 byte是指字节, 一个字节 = 八个位. 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个main函数,是程序运行的起点。 4、C语言本身没有输入输出语句,输入输出操作是调用系统提供的输入输出函数来完成的。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。 2、每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---→.obj---→.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!) 第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If 是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 用户标识符:基本上每年都考,详细请见书上习题。 第四节:进制的转换 十进制转换成二进制、八进制、十六进制。 二进制、八进制、十六进制转换成十进制。 第五节:整数与实数 1)C语言只有八、十、十六进制,没有二进制。但是运行时候,所有的进制都要转换成二进制来进行处理。(考过两次) a、C语言中的八进制规定要以0开头。018的数值是非法的,八进制是没有8的,逢8进1。 b、C语言中的十六进制规定要以0x开头。

相关主题