一个C语言程序是由( d)构成,自考“C语言程序设计”模拟试题八

自考“C语言程序设计”模拟试题八

一、选择题

1.一个C语言程序是由(      )构成。

A.语句            B.行号          C.数据         D.函数

2.下面标识符中正确的是(       )。

A.a#bc            B.123ABC        C.sime         D.Y·M·D

3.在C语言中,存储一个整型、字符型、双精度实型变量所需的字节数是(          )。

A.2、1、8                         B.4、1、4

C.4、1、4                         D.2、2、8

4.为了避免嵌套的条件分支语句 if——else中的else总是与(            ) 组成成对关系。

A. 缩排位置相同的               B. 在其之前未配对的

C. 在其之前未配对的最近的if    D. 在同一行上的if

5.下列表达式的结果正确的是(            )。

int  a,b,c,d;

a=b=c=d=2;

d=a+1==3?b=a+2:a+3

A.2      B.4      C.3      D.5

二、填空题

1.在C语言中,正确的标识符是由_________组成的,且由_______开头的。

2. 设x=3,那么表达式y=(++x)+(++x)的结果为_____,表达式执行后,变量x的结果为_____.

3. 一个变量的指针是指__________________.

4. 组成数组元素的特点是_________________;

组成结构体元素的特点是___________________.

5. 在C语言程序中,对文件进行操作首先要_______________;然后对文件进行操作,最后要对文件实行_____操作,防止文件中信息的丢失。

6. 对字符串进行操作的函数有_____________等。

7. C语言程序是由___________构成的,而C语言的函数是由______构成的。

8. 要想定义整型变量a , 实型变量 b , 字符型的变量c,应该使用的正确语句为______.

9. 写出下面表达式的值

3*5/7+7%3_____     x=2 ; y=4;   (x++)+y  _______

3+4>=7-10______     3>4 ? 3%2: 1    ______

x=2,y=2;++x&&++y_______    x=3 ;  x+=x-=2  _______

三、判断题

1. C语言的一个特点是可以对计算机硬件进行操作                              (        )

2. 在循环过程中,使用break语句和continue语句的作用是一样的               (        )

3. 在函数的定义和调用过程中,形式参数和实在参数数目可以不一致              (        )

4. 指针变量可以接收任何类型的值                                            (        )

5. 在C语言程序设计中,字符数组和字符串不是完全一样的概念                  (        )

6. 文件指针是结构体类型,用符号file来表示                                 (        )

7. 选择结构(if语句)和循环结构都可以使用嵌套形式                          (        )

8. 在定义二维数组时,可以将该数组的两个维数全部省略                         (        )

9. 逻辑运算符  &&   ||     !  的运算顺序是   ! 优先于 && 优先于 ||          (        )

10. 任何数组都可以实现整体使用操作                                          (        )

四、程序填空题

1.下面是实现打印九九乘法表的程序,请在画线的位置填上适当的语句,使程序(段)完整。

main()

{ int  i , j , k;

for(i=1;_____________; i++)

{  for(j=1;______________; j++)

printf(“%d*%d=%d”,_______________);

printf(________________);

}

}

2.自己设计一个自定义函数,实现求两个数的最大数的功能,自定义函数如下:

int  max(x,y)

int  x , y ;

{

}

3.设有如下面的结构体,请用C语言的语句定义出正确的结构体形式:

学生信息:包括(姓名,性别,年龄,分数),并且定义变量stud和数组stud1[30]

struct   student

{

}

4. 根据给出的程序段,请写出正确的结果

x=1 ;  sum=1 ;

for (x=1 ; x<=5 ; x++)

sum=sum*x;

上面的程序段实现的功能是:______________________________________________________ ;

其运行结果为______________________________________________________________________.

5.设有如下的语句。

int     a=43,b,c;

b=23;

c=a++ * ——b;

(1)上面的语句段执行后a=               b=               c=               ;

(2)简述a++和++a的相同点和不同点:

6.设有如下的程序:

main( )

{ int i=3,*p1;

int a[3]={15,30,45},*p2;

p1=&i; p2=a;

p1=p2+2;

printf(“%d,%d\n”,*p1,*p2);

}

程序运行结果是:                                                     .

五、编程题

1.编程实现对10个整数进行冒泡排序(要求排成升序)。

2.编程实现求下面的式子的结果

3.编程实现将文本文件file1.dat中的内容复制到文本文件file2.dat中去

六、附加题

用C语言程序实现在已知链表中的第三个位置插入数值为a的程序

一、选择题

1.D       2.  C        3. A         4.  C       5.  B

二、填空题

1.字母、数字、下划线;以字母、下划线开头。

2.10;5.

3. 该变量的地址。

4.一组数据类型相同的元素构成的;一组数据类型不同的元素构成的。

5.  打开;关闭。

6.字符串长度、取子字符串、字符串替换、字符串复制等。

7. 函数;语句。

8. int a ;  float b ;  char c ;

9   9   9.3   6   1   1  1   2

三、判断题

1. 对   2.  错    3. 错   4. 错  5. 对  6. 错  7. 对  8. 错  9.对  10. 错

四、程序填空题

1.   i<=9     j<=9

printf(“%d*%d=%d”,i,j,i*j);

printf(“\n”); i , j , k;

2.  int z;

if (x>=y)   z=x;

else          z=y;

return  z;

3.  char  name[20];

char  sex;

int  age;

float  score;

4. 实现功能:计算连续数之积,  即sum=1*2*3*4*5  ;

运行结果:sum=120

5. 44   22   946

a++:先加1,后使用表达式的值;++a表示先加1,后使用表达式的值,它们最后的结果使a加1.

6.45,15

五、编程题

1.编程实现对12个整数进行冒泡排序(要求排成升序)。

Main()

{   int  a[12];  int  m,n,p;

for (m=0;m<=11;m++)(m=0;m<=11;m++)

scanf(“%d”,&a[m]);

for (m=0;m<=11;m++)

for(n=0;n<11-m;n++)

if(a[n]>a[n+1])

{   p=a[n];   a[n]=a[n+1];    a[n+1]=p;   }

for (m=0;m<=11;m++)

printf(“%d”,a[m]);                  }

2.编程实现求下面的式子的结果

# include “math.h”

main()

{  float x,y;

scanf(“%f”&x);

if (x>6)   y=(x-3)/(2*x-12);

else       y=-2*x*x+4*x-10;

printf(“y=%f”,y);                       }

3.编程实现将文本文件file1.dat中的内容复制到文本文件file2.dat中去

main()

{  char ch;

FILE *fp1,*fp2;

Fp1=fopen(“file1.dat”, “r”);

Fp2=fopen(“file2.dat”, “w”);

Ch=fgetc(fp1);

While(ch!=EOF)

{   fputc(ch,fp2);

Ch=fgetc(fp1);  }

Fclose(fp1);

Fclose(fp2);                 }

六、附加题

p=H;K=0;

While(p!=NULL && k{   p=p->next;

k++;           }

if(p==NULL  &&  H!=NULL)   printf(“this is invilid”);

else

{  q=(Struct Linklist *)malloc(sizeof(Struct Linklist));

q->data=x; q->data=x;

q->next=p->next;

p->next=q;            }

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值