字符常量:用单引号‘’括起来的一个字符。包括普通字符常量和转义字符。
普通字符常量:如‘a’、‘A’、‘1’。
转义字符:由一对单引号引起来的以\开头的若干字符的组合。如‘\n’表示回车换行、‘\\’表示反斜线符、‘\’’表示单引号符、‘\”’表示双引号、‘\ddd’表示八进制数、‘\xhh’表示十六进制数。
/:当除号左右两边都是整数的时候,商也要是整数,如果不是整数则舍弃小数部分。当参与运算量有一个为实型,则商为double型。
规则:把<<左边的运算数的各二进位全部左移若干位,高位丢弃,低位补0左移一位相当于该数乘以2左移n位相当于该数乘以2n
右移运算>>
把>>左边的运算数的各二进位全部右移若干位。高位补0,低位丢弃。右移一位相当于该数除以2右移n位相当于除以2n
当定义的变量类型和scanf中“格式符”类型不一致时(这里只限定在字符型和整型两种类型,其他数据类型不可以。)整型和字符型之间通过ASCALL可以相互转化。
getchar经常作为while循环条件,判断输入哪一个字符时,循环结束。例如,输入字符串,直到输入‘0’,程序结束,则可写成while( getchar()!='0')
内嵌结构中,else总是与前面最近的且未曾配对的if语句配对,组成一对if-else语句。
4.知识点:switch语句
switch语句的圆括号中的表达式的值必须是整型或字符型,不能为实型。
case后的表达式可以是求得整型和字符型的常量表达式,但不能含有变量。
default的位置对程序的执行没有影响。
循环体部分可以只有一条空语句,不做任何操作。
3.知识点:一维数组的初始化
顺序列出数组元素的全部初值,例如int a[5]={1,2,3,4,5};
只给数组的前面一部分元素设定初值,未赋初值的元素自动取0值。例如,int a[5]={1,2};
对全部数组元素赋初值时,可以不指定数组元素的个数。例如,int a[]={1,2,3,4,5};
4.知识点:二维数组的初始化
按行分段给二维数组赋初值
按行连续赋值
对部分元素赋初值,未赋初值的元素自动取0值
若对全部元素赋初值,则第一维的长度可以不指定
字符数组名是地址常量,不能赋值给数组名。
例1:(2009-04-32)以下选项中正确的语句组是(D)
A)char s[];s=”BOOK!”;                B)char *s;s={“BOOK!”};
C)char s[10];s=”BOOK!”;              D)char *s;s=”BOOK!”;
【解析】字符数组名是地址常量,不能赋值给数组名,故A、C项错误,D项指针s是个变量,将字符串常量赋值给s,是正确的。B项中给s赋值时不能用花括号将字符串括起来。
8.设有说明:int x=0x03,y=3;表达式x&~y的值是(A.   )
A.0                    B.1                    C.2                    D.3
14. 下面各个位运算符的优先级从左到右依次升高的是(A.   )
A. | ^ & >>    B. ^ >> & ~      C. << | ^ ~        D. ~ | & >>
23.如果a=1b=2c=3d=4,则表达式a>b?a:c<d?c:d的值是(  C  )
A1          B2          C3    D4
25.设有说明int x=0,y=0;
则执行if(x++)y=1+x;   
        else y=2+x
  后,变量y的值是(  D 
A0          B1          C2    D3
26.以下程序段所表示的数学函数关系是( A.  )
y=-1
if(x!=0)  if(x>0) y=1;else y=0;
A     B
C    D
30.整数-2在机器内存中的表示是(  B )
A1000000000000010    B111111*********0
C111111*********01    Dswitch语句表示范围111111*********1
33.以十进制无符号形式输出整数的格式说明符是( A.  )
A%u      B%x      C%o    D%d
35.下列位运算符中,表示按位异或操作的是(  C )
A~      B        C^    D&
42.在printf语句中,格式说明符u表示( C  )
A.以十进制带符号形式输出整数   
B.以十六进制带符号形式输出整数
C以十进制无符号形式输出整数   
D.以十六进制无符号形式输出整数
45.只能在循环语句中用于结束本轮循环的语句是(  A. )注:是本轮循环 不是本次循环
Abreak;        Bcontinue;        Cgoto          Dif
46.下列是合法C语言常量的是(    D
A. e       B. 7E4.0     C. E4        D. -9.13E-30
58.设有说明:int u=1,v=3,w=2;表达式(v>>1|u<<2&w的值是(   A.
A.0                    B.1                    C.3                    D.5
60. 下面程序段的输出结果是(  A. )
a=100;
while(a>120);
  a=a+1;
printf(%d,a);
A. 100            B. 101          C. 120        D. 121
(注意while后的“;”)
73.两次运行下面的程序,如果从键盘上分别输入64,则输出的结果是(    A
void mainvoid
{
int x
scanf"d",&x);
ifx + + >5printf"d",x);
else printf"dn"x——);
}
A.75        B.63        C.74          D.64
(注意++优先级高于>!)
75.若有定义int a[3][5];则数组a在内存中占用的字节数是(  D )
A.8            B.15        C.16        D.30
90. C程序中,若用基本数据类型所定义的变量调用函数,正确的说法是(  B )
A. 由系统自动指定对应实参和形参是否共用存储单元
B. 对应实参和形参各占一个独立的存储单元
C. 对应实参和形参共用一个存储单元
D. 可以由用户指定对应实参和形参是否共用存储单元
91. 下面叙述中不正确的是( D  )
A. 不同函数中可以使用相同名字的变量
B. 形式参数是局部变量
C. 在一个函数内部定义的变量只能在本函数范围内有效
D. 在一个函数内部的复合语句中定义的变量在本函数范围内有效
99.下列程序的运行结果是(  B )
#difine N 9
fun  (char s[  ])
  {
        char*p=s+4,*q=s;
        int  i;
        for(i=0;i<4;i+ +,p+ +,q + +)
        {
            s[i]=*p;
            s[i+4]=*q
        }
    }
      main(  )
    {
        char ss[N]= ABCDEFGH;
        fun(ss)
        printf(%s\n,ss);
      }
AEFGHABCD    BEFGHEFGH    CABCDEFGH      DABCDABCD
112.下面程序段的运行结果是(  C   
chars *s="abcde";
s+=2    printf"d"s);
A.cde        B.字符′c′      C.字符′c′的地址          D.无确定的输出结果
120.设有说明:FILE *fpchar *filename=paper;
对于fp=fopen(filename,〃rb+);语句,下面说法正确的是(B   )
A.打开名为filename的文件读写                B.打开名为paper的文件读写
C.打开名为filename的文件只读                D.打开名为paper的文件只读
121. 如果将文件指针fp指向文件末尾,正确的语句是(  D )
A. feof(fp);        B. rewind(fp);    C. fseek(fp,0L,0);    D. fseek(fp,0L,2);
122. 下面程序段中,不能完成的功能是(  B )
FILE *fp;
char ch =v;
fp=fopen(boy, rb+);
fputc(ch,fp);
A. 建立文件指针fp与文件boy的联系        B. boy文件中读取一个字符
C. boy文件中写一个字符                D. 打开名为boy的二进制文件
123.下面程序段中,不能完成的功能是(  C )
FILE *fp;
char ch;
fp=fopen(file1, rb+);
ch=fgetc(fp);
A.建立文件指针fp与文件file1的联系    B.file1文件中读一个字符
C.file1文件中写一个字符    D.打开名为file1的二进制文件
124.在格式:fread(stu,size,n,fp);中,下面说法不正确的是( B  )
A.stu是内存中存放数据的首地址    B.n表示读n
C.size是一个数据块的字节数    D.fp表示文件指针
125.由FILE*fp;fp=fopen(a:\\″,″r+);可以推知fopen 函数的原型是(B   )
Achar *fopen(charchar);    BFILE*fopen(char*,char*);
Cint fopen (char*,char*);    DFILF fopen(char* ,char*);
126.如果文件存储的是数据在内存中存放的字节形式,则该文件是(  C )
AASCII文件    B.文本文件      C.二进制文件      D.设备文件
127.设有说明:FILE*fp;对于fp=fopen(c:\\abc.dat″, rb);语句,下列说法中不正确的是(B   )

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。