i%2==0
%这里是求余符号也就是说i可以被整除
就是当i={
2,4,6}的时候ontinue
说的是条
件满足了跳出本次循环,也就是不执行s+=i语句了
所以,i={
1,
3,5}时s+=i执行,故而结果是s=1+3+5=9.
大哥题都不对。int
a=0,b=0,c=0;
c=(a-=a-5),(a=b,b+3);
printf(“%d,%d,%d\n”,a,b,c);
按程序运行来讲吧。
第一句不说了...
第二句为逗号表达式。
c=(a-=a-5)
给c赋值,把a-=a-5的结果赋给c;
(a-=a-5)=(a=a-(a-5))
把a=0代入得a=5
进而(a-=a-5)的值为5;
c=5;
接下来执行(a=b,b+3);
这里面又有逗号表达式。
a=b因b=0;故a=0;
b+3;不对任何变量赋值,相当于空语句;
综上所述:a=0b=0c=5.
论述完毕.....................
选择答案C,输出的为字符c的地址。
因为%d是打印整形变量的值,因为前一句执行了s+=2,s指针偏移了两个位置,偏移了两个位置之后s指向的是字符c,所以输出语句输出的是指针s,而s存放的是地址,所以输出的就是字符c所在的地址。
扩展资料:
C语言字符串的实现:
c语言没有string类型,c语言中字符串是通过字符指针来间接实现的。
存储多个字符的两种方式:字符串、字符数组。
C语言重要的字符串函数:
1、strcpy(s1, s2),复制字符串 s2 到字符串 s1。
2、strcat(s1, s2),连接字符串 s2 到字符串 s1 的末尾。
3、strlen(s1),返回字符串 s1 的长度。
4、strcmp(s1, s2),如果 s1 和 s2 是相同的,则返回 0;如果 s1<s2 则返回小于 0;如果 s1>s2 则返回大于 0。
5、strchr(s1, ch),返回一个指针,指向字符串 s1 中字符 ch 的第一次出现的位置。
6、strstr(s1, s2),返回一个指针,指向字符串 s1 中字符串 s2 的第一次出现的位置。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)