两道C语言题目,求答案和解析,谢谢~ 两道言语题,求解答

作者&投稿:童桑 (若有异议请与网页底部的电邮联系)

第9题:【C】

核心知识点:1、逗号表达式,从左往右逐个计算表达式,整个表达式的值为最后一个表达式的值。2、++a与a++的区别乱销,前者为先自加1而后引用当前值参与计算,后者为先引用当前值参与计算而后自加1。

x=(a=3,b=++a);

1)执行a=3,此时a值为3;2)执行++a,此时a值为4;3)执行b=++a,此时b值为4,a值为4;4)此时逗号表达式值为4,执行x=4,此时x值为4,a值为4,b值为4。

#include <stdio.h>
#include <stdlib.h>

int main (void) {
int x,a,b;
x=(a=3,b=++a);
printf ("x:%d a:%d b:%d", x, a, b);
getch ();
return 0;
}

运行结果


第10题:【B】

A:连续赋值,除了最右的项外,其余所有项都必须是可以赋值的变量,不可以是常量或者键陪碧表达式。

B:y==1是一个逻辑表达式,从题干得出其值为0,再将其赋值给x,最终结果是x被赋值0。

C:i=float(x);语法错了。如果要稿举实现将x强制转换为float类型并赋值给i,应该写作i=(float)(x);

D:求余运算(%)参与运算的量均必须为整型。



9 c.4 4 4;
这个题了解 逗号运算符的运算规则就行了 ; -----简单来说就是:分别运算。取最后一个值。
a=3 ---> a==3 ; ++a -> a == 4; b=++a; -> b==4; x=b --> x=4;
10. c (如果是多选 ,把B也选上)
A. x*3 表达式不能赋值;
B. Y==1 是一个c++中的bool值 x与bool类型不旅胡匹配(但是也拆岁拦可以这样用)
C. i = float(x) 把x的值强雀岁制转换为float类型 赋值给i 没毛病;
D. i%-3 前面i是float 后面-3 都有问题;

~

C语言选择题8,9题,求大神给个具体解答思路和解析,谢谢了,在线等。
答:解析:B 选项中 char *p = &s;,该句无意义,由于 s 已经是一个 char * 变量了,再进行 & 操作符只会使它变为一个 char ** 的表达式,赋值到 p 中。C 选项中 char *p; p = *s;,该句无意义,只是把一个 char 表达式强制转换成 char * 表达式赋值到 p 中。D 选项中 char *p; ...

两道C语言题目,求答案和解析,谢谢~
答:A:连续赋值,除了最右的项外,其余所有项都必须是可以赋值的变量,不可以是常量或者表达式。B:y==1是一个逻辑表达式,从题干得出其值为0,再将其赋值给x,最终结果是x被赋值0。C:i=float(x);语法错了。如果要实现将x强制转换为float类型并赋值给i,应该写作i=(float)(x);D:求余运算(%...

C语言题目,求答案,求解释
答:答案是B,解释如下:设X为-1 x>0?x:-x;也就是x是否是大于零的数?大于零,号就是你了,不是零,不行,要取你的相反数!所以x=-1,-x=1,所以如题 再设X=1 x=1,不用-x就可以了,所以如题 满意采纳,不满意请追问

两道很基础的C语言题 求求好心人帮忙给出答案和解析
答:第一题,从题目看,main中输入了一个字符数组到item,并把这个item传给delnum处理,delnum中的那个循环,是逐个判断s[i]是否是小于'0'或者大于9,即判断s[i]是否非数字,如果非数字,则用s[j++]=s[i]来将内容保存,举个例子,比如输入a9,在delnum中,第一次循环i=0,s[0]为'a',满足if...

几道C语言的函数补全程序题,求大佬们解答
答:当然,非常乐意为您解答C语言函数补全程序题。以下是一些练习题和参考答案:编写一个函数,输入一个字符串,将其中的所有小写字母转换为大写字母并返回结果字符串。include <stdio.h>#include <string.h>#include <ctype.h>void toUpperCase(char *str) {for(int i = 0; i < strlen(str); i++)...

c语言选择题,这两道题求c语言大哥解答,详细点哈,谢谢
答:第一题 和++运算优先级相等,运算自右向左 p++; 相当于p++后再*p,所以p指向&a[1], *p等于11 比+的运算优先级高 p+=1;相当于*p=*p + 1;答案为C 第二题 答案为A S是数组首地址,不是指针,不可移动

C语言的几道选择题,求答案,谢谢
答:1.for(n=0,n<20;n++)控制循环执行(D)次。A.19 B.21 C.22 D.20 解释:从n=0运行到n=19,你数数,应该是20次吧!2.一个C语言源程序至少应包含一个( A )。A.Main函数 B.用户自定义函数 C.语句 D.printf函数 解释:main函数是机器的识别函数,程序在main函数...

C语言选择题,求详解
答:解析:p 表示p是一个储存地址的变量 在这个程序中当运行完p=a;时,*p为"1",*p++也为"1"p++和*(p++)相同 printf的运行顺序是从左到右 p++是把*p存储的地址+1,而p的存储地址是数组的第一个,所以相当于把p的指针往后移一位,也就是说把p指向的数组的位置往后移一位。所以就是321 ...

求教一个二级C语言的题目,求详细解释,尤其是答案解析里面:x9+3=12,怎...
答:sss函数有三个参数,第一个参数是函数指针,指向函数入口地址,后两个参数为整型。返回值为一个拥有两个int型参数x和y的函数的返回值。因此,sss(funa,9,3)相当于调用函数funa(9,3),其返回值就是funa(9,3)的返回值。故x=funa(9,3)=12。同理x+=funb(8,3)=5,x=12+5=17。故答案为...

c语言程序设计的基础题目求教,请给解析(多追积分)
答:4:若有定义:int a=10,b=9,c=8;接着顺序执行后下列语句是,变量b中的值是()c=(a-=(b-5));c=(a%11)+(b=3);由上面的几题为基础,c=(a-=(b-5))相当于c=(a=a-(b-5)),c=(a=10-(9-5)),c=(a=6),所以a=6,c=6,b=9(表达式b-5并没有改变b的值)c=(a%11)+...