要期末考试了,怎么速学复习c语言程序设计

要期末考试了,怎么速学复习c语言程序设计,第1张

首先用1~3天的时间,把C语言的基本语法、基本类型等过一遍。比如指针啊,数组啊,指针的指针啊等等。除非平时一点都没听,否则3天之内应该是可以吧这些内容熟悉一遍的。

剩余的时间,预留3天做做题。其余时间全部放到数据结构和基本算法的研究上。比如链表、排序算法等。

一般考试就是理论和编程。在学校应该是偏理论。所以先过一遍理论,然后再通过练习加深理论。

祝你好运了

以下答案仅作参考,希望通过你的思考后对你有所帮助。

一、

1、函数

2、源程序一般是.c或者.cpp

头文件是.h

编译后是.obj

链接后是.exe

3、分支结构、循环结构

4、从主函数开始执行,即main()函数开始

5、分隔符为分号 即 ;

6、float

7、把12赋值给变量S

8 基本单位是函数

9、0

10、60

11、stdio.h

12、4

13、16

14、%

15、非0

16、3

17、8

18、8

19、int 、char 、float

20、main()

21、10

22、与运算符:&&或运算符:||;非运算符:!

23、getchar()putchar()

24、输入与编辑源程序--对源程序进行编译--与库函数连接--运行可执行的目标程序

25、分支结构、循环结构

26、逻辑表达式、条件表达式

27、?:

28、文件包含、条件编译

二、

1、结果:2 因为:if(a<b)不成立,所以下面语句都不执行。结果为C的初值,也就是2。

2、结果:K 因为A+10后,也就是到了K

3、a ,97 因为‘a’所对应的整数是97

4、没有结果输出。原因两个条件都不成立。

三、

1、

#include <stdio.h>

void main()

{ int a,b,c

printf("请输入三个整数:")

scanf("%d%d%d",&a,&b,&c)

if(a<b) a=b

if(a<c) a=c

printf("最大的数:%d",a)

}

2、

#include <stdio.h>

void main()

{ int sum=0,i

for(i=1i<=50i++)

sum+=i

printf("1—50的和为:%d",sum)

}

3、

#include <stdio.h>

void main()

{ char c

printf("请输入一个大写字母:")

scanf("%c",&c)

printf("\n它的小写字母为:%c",c+32)

}

4、

#include <stdio.h>

void main()

{ float sum=0,temp

int i=1

while(i<=100)

{temp=1/i

sum+=temp

i++

}

printf("结果为:%f",sum)

}

5、

#include <stdio.h>

void main()

{int a,b

printf("请输入两个整数:")

scanf("%d%d",&a,&b)

printf("大的数是:%d",a>b? a:b)

}

6、

#include <stdio.h>

void main()

{int i=1

float sum=0,temp=0

while(i<=99)

{temp=1/i

sum+=temp

i=i+2

}

printf("结果为:%f",sum)

}

一. 选择题 (共15题, 每题2分,共30分)

1. 定义结构体的关键字是()

A. union B. enumC.struct D.typedef

2. 设整型变量a为5,使b不为2的表达式是( )

A. b=a/2B. b=6-(--a)C. b=a%2D. b=a>3?2:1

3. 下面哪一项是不正确的字符串赋值或赋初值的方法()

A. char *strstr= “china”

B. char str[7]= {‘c’, ‘h’, ‘i’, ‘n’, ‘a’}

C. char str1[]= “china”,str2[]=“123”

D. char str1[10]str1= “china”

4. 以下对二维数组a进行正确初始化的是( )

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

C. int a[2][ ]={1,2,3,4,5,6} D. int a[2][ ]={{1,2},{3,4}}

5. 选出下列标识符中不是合法的标识符的是()

A. hot_do B. cat1 C. _pri D. 2ab

6. 以下说法中正确的是( )

A. C语言程序总是从第一个的函数开始执行

B. 在C语言程序中,要调用的函数必须在main()函数中定义

C. C语言程序总是从main()函数开始执行

D. C语言程序中的main()函数必须放在程序的开始部分

7. 若已定义:int a[9], *p=a并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( )

A. p+1 B. a+1 C. a++D. ++p

8. 若有说明: int i,j=7, *p=&i, 则与i=j等价的语句是( )

A. i= *p B. *p=*&j C. i=&j D. i=* *p

9. 若变量c为char类型,能正确判断出c为小写字母的表达式是( )

A. ‘a’<=c<= ‘z’ B. (c>= ‘a’) || (c<= ‘z’)

C. (‘a’<=c) and (‘z’>=c) D. (c>= ‘a’) &&(c<= ‘z’)

10. 以下程序的输出结果是( )

main()

{ int a[]={1,2,3,4,5,6,7,8,9}, *p

p=a

*(p+3)+=2

printf( “%d,%d\n”,*p,*(p+3) )}

A. 0, 5 B. 1, 6 C. 1, 5 D. 0, 6

11. 以下程序的输出结果是( )

main()

{ int a=5

float x=3.14

a*=x*(‘E’- ‘A’)

printf(“%f\n”,(float)a)}

A. 62.000000 B. 62.800000 C. 63.000000 D. 62

12. 以下程序的输出结果是( )

#define f(x) x*x

main()

{ int a=6,b=2,c

c=f(a)/f(b)

printf(“%d\n”,c)}

A. 9 B. 6 C. 36 D. 18

13. 定义如下变量和数组:int iint x[3][3]={1,2,3,4,5,6,7,8,9}

则语句for(i=0i<3i++) printf("%d ",x[i][2-i])的输出结果是( )

A. 1 5 9B. 1 4 7C. 3 5 7 D. 3 6 9

14. 下列程序段的输出结果是 ( )

void main( )

{ int k

for (k=1k<5k++)

{ if(k%2!=0)

printf( “#” )

else

printf(“*”) }

}

A. #*#* B . *#*#C. ## D. **

15. 下列程序执行后输出的结果是( )

int d=1

fun (int p)

{ int d=5

d + =p + +

printf("%d,",d)}

main( )

{ int a=3

fun(a)

d + = a + +

printf("%d\n",d)}

A. 8, 4 B. 9, 6 C. 9, 4 D. 8, 5

二. 填空题(共7题,每空2分,共30分)

1. 数组 int a[3][5]共定义了_______________个元素。

2. 有float f=3.1415927则 printf(“%5.4f”, f )输出的结果是_______________。

3. 下面程序的功能是:输出 100以内(不包含100)能被 3整除且个位数为 6的所有整数,请填空。

main( )

{ int i

for(i=1_______________i++)

if (_______________)

printf("%d", i);

}

4. 设有“int x=2, y”说明,则逗号表达式“y=x+5,x+y”的值是 _______________

5. 以下是使用指针,进行字符串复制的程序,请填空。

main()

{ char a[]= “Tsinghua University”, b[30], *p1,*p2

p1=a

p2=b

for(*p1!= ‘_______________’p1++, p2++)

_______________=_______________

*p2= ‘_______________’

printf(“string a is:%s\n”,a)

printf(“string b is:%s\n”,b)

}

6. 下面程序用冒泡法对数组a进行降序排序,请填空。

main()

{ int a[5]={4,7,2,5,1}

int i,j,m

for(i=0i<4i++)

for(j=0j<_______________j++)

if( _______________<_______________ )

{ m=a[ j]

a[ j]=a[ j+1]

a[ j+1]= m}

for(i=0i<5i++)

printf("%d ",a[i])

}

7. 函数fun的功能是:使一个字符串按逆序存放,请填空。

void fun (char str[])

{ char mint i,j

for(i=0,j=strlen(str)i<_______________i++,j--)

{ m=str[i]

str[i]= _______________

str[j-1]=m

}

printf("the rotated string is %s\n",_______________)

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11040034.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-13
下一篇2023-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存