C语言编程基础

 2024-02-09 03:03:45  阅读 0

在C语言中,宏定义不是C语言。

解释如下:

宏是C语言的预处理函数,在编译前必须在程序中进行替换。

预处理是在编译之前完成的工作。

C语言中的语句全部以分号结尾,预处理后不能有分号;

宏可以分为两种类型:不带参数的宏和带参数的宏。

注释也不是合法的 C 语句

选择题下方合法的C语句是[B]。 A.#MY 100B. a=25;C. a=b=100D. /*米=100;*/

2. 下列描述中,正确的是[D]。

A. C 程序中的所有标识符都必须小写

B. C程序中的关键字必须小写,其他标识符不区分大小写

C. C 程序中的所有标识符都不区分大小写 D. C 程序中的关键字必须小写,其他标识符区分大小写(关键字是 C 语言中规定的具有特定含义的标识符。它们不能用作预定义标识符或用户定义的标识符和[关键字必须是小写字母])

3. 下列标识符中,[D]不是C语言关键字。 A. charB. gotoC. 案例D.

整型变量的声明和赋值_整型变量i定义后赋初值_若a和b均是整型变量并已正确赋值,正确的switch语句是(

图片来源百度

4、以下标识符中非法的用户标识符是[A]。 A。 。 _123C。 周日D. XYZ

5. 下列非C语言常量的数据是[A]。 A. e-2B。 074C。 '\0'D. "a"(e/E前必须有数字,指数为整数)

6. 下面错误的转义字符是[C]。 A. ''B. '\' 'C。 '\19'D。 '\0'(转义字符以反斜杠开头,后跟一个或多个字符;\ddd和\xhh(十六进制)可以方便地表示任意字符,ddd表示1到3个八进制数的ASC2码,例如\ 101代表字母A。\102代表字母B。\x41代表字母A)

7. 假设t是类型变量表达式t=1,t+2,t++的值为[D]。 (表示双精度浮点数;表达式语句是C语言中最基本的语句,在程序中用于对操作对象进行运算。一般形式为:表达式;(分号是不可缺少的)。对于例如语句 a+b; 执行了操作 a+b,这在 C 语言中是合法的,但是该语句没有将运算结果赋值给任何变量,因此该语句没有实际意义。同样,对于这道题, t+1和t++执行后没有赋值,所以t的值保持不变。)

A.4.0B。 3.0C。 2.0D。 1.0

8. 如果变量已经正确定义并赋值,则下面的合法表达式为[B]。

A. (int) a=b+7B. a=7+b+c,++a

C. int (12.3%4)D. a=a+2=c+b(不带括号的int;余数运算符两边不能有小数;赋值运算符是把一个数据(常量或表达式)赋给一个变量,左边必须是a变量,不能是常量或表达式!)

9. 假设a是一个整型变量。 下面的数学关系不能正确表达1010 && a=15)(关系运算符是左结合的。关系表达式的运算成分可以是算术量、字符量和逻辑量,但结果只能是逻辑量数量有真有假;例如关系运算符和数学公式的区别: 数学公式10

10、能正确表达a不等于0的关系式是[C]。

A. a=0B. a≠0C. 广告。 !A

假设int a=04,b; 变量定义,则表达式 b=a3)?2+4:1,2,3 的值为。 答:逗号表达式由条件表达式、2、3组成。逗号表达式的值为最后一个表达式的值,所以为3。 If int a=1,b=15; 被定义并且 --a&&b++ 被执行 在 ; 之后语句,b的值为。 答:--a是第一次减操作,先做a=a-1=0,然后取a的值0参与表达式运算。 由于逻辑与运算的短路性质,其一个操作数为0,而不管另一个操作数的值是多少? 整个逻辑与的结果已经确定,所以b++不会被执行,所以b的值仍然是15。表达式10||20||30的值是。 答案:1表达式10&0xd+06的值为。 答:十进制数10的二进制码为1010B,十六进制数0xd的二进制码为1101B,按位与结果为1000B,即十进制数8,8+06=14

读取程序并写入结果

#

无效主()

int i=5, j=6, m=i+++j;(“%d,%d,%d\n”,i,j,m);

答案:6,6,11(注意运算符的优先级++自增运算符优先级是2,+加法运算符优先级是4;所以先执行(i=5) i++=5 i=6;( j=6 ) m=(i++)+j=5+6=11)

#

无效主()

f=3.14159;

整数 n;

n=(int)(f+10)%3;

(“%d\n”,n);

答案:1 解析:%为余数运算符; int() 是舍入函数,它将要舍入的实数(可以是数学表达式)四舍五入到最接近的整数,而不是四舍五入。 这里,f+10=13.14159 四舍五入为 13,然后将 13 除以 3 得到余数。 商为 4,余数为 1。

#

#

无效主()

{char s[ ]=”ab\n\\\'\r\b”;(“%d,%d \n”,(s), (s));

答案:8,7

#

无效主()

int a = 2,b = 4,c = 6,x,y;

y=(x=a+b),(b+c);(“y=%d,x=%d \n”,y, x);

答案:y=6,x=6

#

无效主()

整数 i、j、x、y;

我=5; j=7;

x=++i;

y=j++;

("%d,%d,%d,%d\n",i,j,x,y);

答案:6,8,6,7

补充:自增和自减的比较,第一次自增和最后一次自增int i=5(比较两列)

++aa++

将变量a的值加上①,得到变量a的值(即5)

(变为 6) 作为表达式的值

然后将a中a的值加上①(变成6)

取 a 的值(即 6)并将其存储在 a 中

作为表达式的值

表达式=6

总结:

先递增++a,然后递增a++

表达式的值为加号 ①表达式的值为a

变量的值增加了①

若a和b均是整型变量并已正确赋值,正确的switch语句是(_整型变量的声明和赋值_整型变量i定义后赋初值

标签: 表达式 运算 变量

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码