作业

 

一.单项选择题 

1. 运算符____A_______的优先级最高。

         A.[ ]     B. +=       C. ?:     D.++

2.main( )

   {  int n;      ( n=6*4,n+6),n*2;       printf(“n=%d\n”,n);    }

  此程序的输出结果是______B________.

   A.30    B.  24     C.  60      D.  48

3.若有如下定义,则____A______是对数组元素的正确的引用。.

   int  a[10] , *p ;      p=a ;

   A.  *&a[10]     B.  a[11]      C.  *(p+11)      D. *p

4.设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是___C_______

   A.  0     B.  4    C.  - 4     D.  2

5.各种基本数据类型的存贮空间正确的长度排列为_____C_____。

   A.Char<long<int<float<double     B.Double<float<long<int<char

   C.Char<int<long<float<double     D.Float<int<long<char<double

6.下面的变量说明中______C_______是正确的。

      A.char:a, b, c;  B.char a; b; c;     C.char a, b, c;    D.char a, b, c

7.表达式y=(13>12?15:6>7?8:9)的值为_____B_______ 。

      A   9     B   8    C  15    D.  1

8.若x=5,y=3 则y*=x+5; y的值为_______D________.

       A.  10   B.  20    C.  15      D.  30

9.能正确表示a和b同时为正或同时为负的逻辑表达式是_________。

A.(a>=0||b>=0)&&(a<0 ||b<0)      B.(a>=0 && b>=0)&&(a<0 && b<0)

C.(a+b>0) &&(a+b<=0)            D. a*b>0

10.C语言中,合法的字符型常数是____A_____。

A.‘A’        B.“A”        C. 65        D. A

11.已有定义 int x=3, y=4, z=5;则表达式“!(x+y)+z-1&&y+z/2”的值是____D____。

A.6      B.0      C.2        D.1

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

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

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

13.设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是____B___。

A.printf(“x=%d\n”,x)          B.printf(“x=%ld\n”,x)

C.printf(“x=%8dl\n”,x)        C.printf(“x=%D\n”,x);

14.从循环体内某一层跳出,继续执行循环外的语句是:_____A______。

   A. break语句      B.return语句     C.continue语句     D.空语句。

15.C语言用___C____表示逻辑“真”值。

    A.true   B.t或y   C.非零整型值   D.整型值0

16.为了避免嵌套的条件分支语句if—else 的二义性,C语言规定:C程序中的else总是与__C___组成配对关系。

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

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

17.在函数中默认存储类型说明符的变量应该是____C____存储类型。

A.内部静态    B. 外部      C.自动          D. 寄存器

18.C语言中以只读方式打开一个文件应选择_________C______参数。

    A.“r”       B.“w”       C.“rb”      D.“a”

19.设有数组定义:char array[]=”student”;则数组所占的存贮空间为_____C_____。

   A.6个字节  B. 7个字节     C. 8个字节    D. 9个字节

20.根据C语言的语法规则,下列____A____是不合法标识符。

   A.do    B. Name     C. R5    D. _exam

二.判断题

1. C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .EXE 的文件。 ( 对  )

2.在 C 程序中 , 函数既可以嵌套定义 , 也可以嵌套调用。(  对   )

3.在 C 程序中 ,APH 和 aph 代表不同的变量。(   对  )

4.表达式 0195 是一个八进制整数。(   错      )

5.Continue语句的作用是结束本次循环。(    错   )

6.Extern(外部)变量的生命期是整个程序执行期。 (     对    )

7.C语言中字符串的结束符是’\0’。 (    对     )

8.利用fclose函数关闭已打开的文件。  (      对  )。

9.C程序总是从main( ) 函数的第一条语句开始执行的。 (  对    )

10.数组名代表数组的首地址。(     对   )

三.填空

1.C语言的预处理语句以____#if______开头。

2.表达式7+10>2 && 25 %5的结果是___________0____________。

3.下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。

   Int  n=0, ch;        Ch=getchar( );

   While( __________________ )

{  if ( ________________ )  n++;       c=getchar( );                }

4.C语言中getchar() 函数的功能是:__函数等待输入直到按回车才结束 回车前的所有输入字
符都会逐个显示在屏幕上.

5.int *p 的含义是:_指针指向的类型是整形,指针的类型是int*。

6.定义fp为文件型指针变量的定义方法为_______________________。

7.数组 int  a[3][3];共定义了_____9_______个数组元素。

四、读程序。

1. 改正下列程序中不正确的语句。

main( )

  { int  a;

    scanf(“%d”, a);     if (a = 1)    printf(“One\n”) ;      }

2.写出下列程序的运行结果。

  fun(int a, int b)

   { if(a>b) return (a);

     Else  return (b);  }

    main()

    { int x=3,y=8,z=6,r; 

      r=fun(fun(x,y),2*z);     printf(“%d\n”,r);  }

3. 改正下列程序中不正确的语句。

   main()

   { int n ;

     float s=1.0;

     for(n=10;n>1;n- -)

       s=s+1/n;

     printf(“%6.1f\n”,s);  }

4. 写出下列程序的运行结果。

   main()

   { int n;

     For(n=3; n<=10; n++)

       { if(n%6= =0) break;   Printf(“%d”,n); }       }

5.写出下列程序的运行结果。

  #include “stdio.h”

   Main()

   { int a[]={1,2,3,-4,5};

     int m,n,*p;     p=&a[0];      m=*(p+1);      n=*(p+4);

    printf(“%d  %d  %d  ”,*p,m,n);  }

五.编程

1.    编程计算下列表达式:s=n!(n从键盘上输入)
#include "iostream.h"

 

void main()

{

     int s=1,n;

     cout<<"请输入一个整数:";

     cin>>n;

 

     for (int i=1; i<=n;i++)

     {

         s*=i;

     }

     cout<<s<<endl;

}

2.输出1—100之间不能被12整除的数。

#include "iostream.h"

 

void main()

{

       for (int i=1; i<=100; i++)

       {

              if (i%12!=0)

              {

                     cout<<i<<" ";

              }

 

       }

       cout<<endl;

}

3.从键盘上输出10个整数存入一维数组中,按由大到小的顺序输出。

#include "iostream.h"

void main()

{

       int a[10] ;

       int n,i,j,temp;

       cout<<"请输入10个整数以空格区分:"<<endl;

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

       {

              cin>>a[i];

       }

       //将数组进行排序

       for (i=1; i<10; i++)

       {

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

              {

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

                     {

                            temp = a[j];

                            a[j] = a[j+1];

                            a[j+1] = temp;

                     }

              }

       }

       //输出排序后的数组

       cout<<"按由大到小的顺序输出:";

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

       {

              cout<<a[i]<<" ";

       }

       cout<<endl;

}

4.从键盘上输入9个数,按3行3列的格式输出。

#include "iostream.h"

void main()

{    int a[10] ;

     int k,i,j,temp;

     cout<<"请输入9个整数以空格区分:"<<endl;

     for ( j=0; j<9; j++)

     {       

cin>>a[j];

     }

     //按行列输出

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

     {

         for (k=1;k<4;k++)

         {   

              static j=0;

 

              cout<<a[j]<<" ";

              j++;

         }

         cout<<endl;

     }

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值