好久没有看C语言了 从大一上学期开始学C,隔了这么长时间快到找工作的时候才想起看看
哎,自己真是够懒的,
看到了些知识点 都忘记了 悲催 做了几道题都不小心做错了 这么简单的题都错 那么笔试面试怎么办 贴出来自勉,以示警示
1. 判断int x = 0xaffbc;x的结果是( D ) 。
A.赋值非法 B.溢出 C.为affb D.为ffbc
2.记住A的ascll码65 a 97 0 48
3.并不是任何对象都可以作为左值的,运算表达式和常变量就不能作为左值。任何左值都可做右值。
4.赋值表达式具有计算和赋值双重功能。程序中的计算功能主要是由赋值语句来完成。
5.C语言的赋值语句与其他高级语言的赋值语句之间的差异:
(1) C语言中的赋值号“=”是一个运算符,在其他大多数语言中赋值号不是运算符。
(2) 要区别赋值表达式和赋值语句。其他多数高级语言没有“赋值表达式”这一概念。
printf是C语言提供的输出函数;这句话是错误的 printf函数并不是C语言的一部分 C语言本身并没有输入输出函数
6.已有定义,int a=5,b=6,c=7,d=8,m=2,n=2,则逻辑表达式(m=a>b) && (n=c>d)运算后,n的值为()
解:因为m=a>b值为1 因此&&后面的表达式不执行计算 因此n还是为2
7.break语句不能用于循环语句和switch语句之外的任何其他语句中。
8.设有程序段
int k=10;
while(k=0)k=k-1;
这下面描述中正确的是___C______.
(A)while循环执行10次 (B)循环是无限循环
(C)循环体语句一此也不执行 (D)循环体语句执行一次
虽然赋值为真 但是k的值还是为0 所以一次也不执行
9.下面程序的执行结果是_____B_____。
#include<stdio.h>
void main()
{
int y = 10;
do
y - -;
while(y--);
printf(" %d \n" , y--);
}
(A)程序错误 (B)死循环 (C)-1 (D)0
这是一个死循环 while(9->7->5->3->1->-1)
10.下面程序段的运行结果是____C______.
int n=0;
while(n++<=2);
printf("%d",n);
(A)2 (B)3 (C)4 (D)有语法错
11.定义数组元素的个数必须使用常量表达式,而不能使用变量。
int i,j; a[i][j] 这样是不对的
12.如果对数组全部元素赋初值,第一个下标可省略,但第二个下标不可省略。
可写成 a[ ][4]={0,1,3,1,2,1,0,2,1,1,2,0};
13.强调:字符串实际占有单元的数量等于字符串长度+1。
定义时应注意考虑元素总个数应比实际长度多1。
14.scanf("%s",a);
只能输入不包括空格、\t和\n的字符串;空格、跳格和回车是输入数据的结束标志.
若要输入空格,用gets函数;
数组名前不加 &符号。
15.char str[10];str=