C语言八.docx

上传人:b****1 文档编号:2160059 上传时间:2023-05-02 格式:DOCX 页数:8 大小:17.92KB
下载 相关 举报
C语言八.docx_第1页
第1页 / 共8页
C语言八.docx_第2页
第2页 / 共8页
C语言八.docx_第3页
第3页 / 共8页
C语言八.docx_第4页
第4页 / 共8页
C语言八.docx_第5页
第5页 / 共8页
C语言八.docx_第6页
第6页 / 共8页
C语言八.docx_第7页
第7页 / 共8页
C语言八.docx_第8页
第8页 / 共8页
亲,该文档总共8页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言八.docx

《C语言八.docx》由会员分享,可在线阅读,更多相关《C语言八.docx(8页珍藏版)》请在冰点文库上搜索。

C语言八.docx

C语言八

习题8

一、选择题

1.以下选项中属于C语言的数据类型是( )

A.复数型   B.逻辑型  C.双精度型  D.集合型

2.要判断char型变量m是否是数字,可以使用下列表达式( )

A.0<=m&&m<=9        B.‘0’<=m&&m<=’9’   

C. “0”<=m&&m<=”9”    D.前面三个答案均是错误的

3.为了判断两个字符串s1和s2是否相等,应当使用()

A.if(s1==s2)            B.if(s1=s2)

C.if(strcpy(s1,s2))   D.if(strcmp(s1,s2)==0)

4.以下说法正确的是( )

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

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

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

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

5.以下错误的描述是()

A.不同函数中可以使用相同的变量名

B.形式参数是局部变量

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

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

6.要说明一个有10个int元素的数组,应当选择语句( )

A.inta[10];    B.inta[2,5]    C.inta[ ];  D.int*a[10];

7.说明语句”int(*p)();”的含义是( )

A.p是一个指向一维数组的指针变量  

B.p是指针变量,指向一个整型数据

C.p是一个指向函数的指针,该函数的返回值是一个整型

D.以上都不对

8.已知:

charb[5],*p=b;则正确的赋值语句是( )

A.b=”abcd”; B.*b=”abcd”; C.p=”abcd”; D.*p=”abcd”;

9.下面的四个运算符中,优先级最低的是( )

A.()       B..         C.—>      D.++

10.中标准输入文件stdin是指()

A.键盘    B.显示器    C.鼠标     D.硬盘

11.以下非法的赋值语句是

   A.(i=2,++i); B.j++;   C.++(i+1);    D.x=j>0;

12、有以下程序段

   intn=0,p;

   do{scanf(“%d”,&p);n++;}while(p!

=12345&&n<3);

   此处do—while循环的结束条件是

   A.P的值不等于12345并且n的值小于3

   B.P的值等于12345并且n的值大于等于3

   C.P的值不等于12345或者n的值小于3

   D.P的值等于12345或者n的值大于等于3

13、以下叙述中错误的是

   A.进制文件打开后可以先读文件的末尾,而顺序文件不可以

   B.在程序结束时,应当用fclose函数关闭已打开的文件

   C.利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素

读入数据

   D.不可以用FILE定义指向二进制文件的文件指针

14、以下选项中,与k=n++完全等价的表达式是

   A、k=n,n=n+1 B、n=n+1,k=n C、k=++n D、k+=n+1

15、若有以下说明和定义

  typedefint*INTEGER;

  INTEGERp,*q;

  以下叙述正确的是

  A、P是int型变量            B、p是基类型为int的指针变量

  C、q是基类型为int的指针变量 D、程序中可用INTEGER代替int类型名

二、程序填空

1.#include 

  main()

  {charch;

ch=getchar();

switch(ch)

{case65:

      printf(“%c”,‘A’);

 case66:

      printf(“%c”,’B’);

 default:

      printf(“%s\n”,”other”);

}

}

如程序可以正常运行,当从键盘输入字母A时,输出结果为___________________

2.#include 

intd=1l;

fun(intp)

{intd=5;

 d+=p++;

 printf(“%d”,d);

}

main()

{inta=3l;

 fun(a);

 d+=a++;

  printf(“%d”,d);

}

运行结果是________________________

3.#include 

       main()

      {inti=0,j=0;

        while(i<10)

        i++;

        While(j++<10);

        Printf(“i=%d,j=%d\n”,i,j);

 }

运行结果是________________________

4.#include 

    main()

    {staticchara[]=”Program”,*ptr;

     for(ptr=a;ptr

putchar(*ptr);

运行结果是________________________

5、以下程序运行时,当输入Language Programming[Enter],其结果是____________

#include 

main()

{

 charstr[30];

 scanf("%s",str);

 printf("%s\n",str);

}

6、阅读下面程序,设编译后生成的可执行文件名为cfile 

#include 

main(intargc,char*argv[])

{

 while(argc>1)

  {

   ++argv;

   printf("\n%s",*argv);

   --argc;

  }

}

7、有以下程序

  voidss(char*s,chart)

  {while(*s)

  {if(*s==t)*s=t-‘a’+’A’;

  s++;

  }

  }

  main()

  {charstr1[100]=“abcddfefdbd”,c=’d’;

  ss(str1,c);printf(“%s\n”,str1);

  }

  程序运行后的输出结果是_________________________

8、下面程序输出3到100之间的所有素数。

#include 

main()

{ inti,j;

  for(i=3;i<=100;i++)

  { for(j=2;j<=i-1;j++)

       if(_____________)break;

if(____________) 

    printf(“%4d”,i);

         }

}

9、下面的函数sum(intn)计算1~n的累加和

sum(intn)

{if(n<=0)

printf(“dataerror!

\n”);

       if(n==1)______________;

       else________________;

      }

10、下面的程序是使用冒泡法对输入的10个浮点数从小到大进行排序。

#include 

 main()

 { floata[10],x;

inti,j;

printf(“input10numbersplease\n”);

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

 scanf(“%f”,&a[i]);

printf(“\n”);

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

  for(j=0;j<10-i;j++)

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

    {x=a[j];

       ________________;

     a[j+1]=x;

    }

三、编程

1、写一函数,求方程aX2+bX+c=0的根。

从主函数输入a、b、c的值

2、写一函数,输入一个二进制数,输出相应的十进制数

3.建立一个链表,每个结点包括:

学号、姓名、性别、年龄。

输入一个年龄,如果链表中的结点所包含的年龄等于此年龄,将此结点删去

习题8答案

一、选择题

1、C 2、B 3、D 4、C 5、D 6、A 7、C 8、C 9、D 10、A

11、C12、D13、D14、A 15、B

二、程序填空

1.Abother   2.8 4   3.i=10,j=11  4.Porm  5.Language

  6.computer C_LANGUAGE 7.abcDDfefDbD

8、i%j==0  j==I

 9、return

(1) return(sum(n-1)+n)

 10、i<10 i<9 ja[j]=a[j+1]

三、编程

1.

#include 

  floatx1,x2,disc,p,q;

  greater_than_zero(floata,floatb)

  {x1=(-b+sqrt(disc))/(2*a);

x2=(-b-sqrt(disc))/(2*a);

  }

  equal_to_zero(floata,floatb)

  {x1=x2=(-b)/(2*a);

  }

  smaller_than_zero(floata,floatb)

  { p=-b/(2*a);

q=sqrt(disc)/(2*a);

  }

  main()

  { floata,b,c;

scanf(“%f,%f,%f”,&a,&b,&c);

disc=b*b-4*a*c;

if(disc>0)

{ greater_than_zero(a,b);

  printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);

elseif(disc==0)

 {equal_to_zero(a,b);

  printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);

 }

else

 {smaller_than_zero(a,b);

  printf(“x1=%5.2f\tx2=%5.2f\n\n”,x1,x2);

 }

 }

2.

#include"stdio.h"

main()

{

 intadd(intm,intn,intarr[]);

 inttotal,a[3][4]={3,8,9,10,2,5,-3,5,7,0,-1,4};

 total=add(3,4,a[0]);

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

}

add(intm,intn,intarr[])

{

 inti,j,sum=0;

 for(i=0;i

 for(j=0;j

  sum=sum+arr[i*n+j];

 for(j=0;j

 for(i=1;i

  sum=sum+arr[i*n+j];

 return(sum);

}

3.

#defineNULL0

#defineLENsizeof(structstudent)

structstudent

{charnum[6];

 charname[8];

 charsex[2];

 intage;

 structstudent*next;

}stu[10];

main()

{ structstuent*p;*pt,*head;

  intI,length,iage,flag=1;

  intfind=0;

  while(flag==1)

  { scanf(“%d”,&length);

    if(length<10)

       flag=0;

  }

  for(I=0;I

 {p=(structstudent*)malloc(LEN);

  if(I==0)

    head=pt=p;

  else

    pt->next=p;

  pt=p;

  scanf(“%s”,p->num);

  scanf(“%s”,p->name);

  scanf(“%s”,p->sex);

  scanf(“%d”,&p->age);

 }

 p->next=NULL;

 printf(“inputage:

”);

 scanf(“%d”,&iage);

 pt=head;

 p=pt;if(pt->age==iage)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2