c语言基础内容,刚入门

若x是int型变量,且有下面的程序片段:
for(x=3; x(6;x++)printf((x%2)?("%d"):("##%d\n"), x);
上面程序片段的输出结果是
A、
3
##4
**5
B、##3
**4
##5
C、##3
4##5
D、
3##4
**5

img


#include<stdio.h> 
  int main()
  {
      for(int x = 3; x < 6; x ++)
      printf((x%2)?("%d"):("##%d\n"), x);
      
  } 
 

若能解决你的问题,感谢点击一个采纳,十分感谢你呢

3##4
5

循环3次,单数打印*,偶数打印#,选A

第一:三木运算符了解一下
第二: 表达式结果为真和假 与0和非零的关系,0为假,非零为真的概念。

img

#include <stdlib.h>
#include <string.h>
int main() {
    int x;
    for (x = 3; x<6; x++)
        printf((x % 2) ? ("%d"):("##%d\n"), x);

    //关键是理解这行代码 printf((x % 2) ? ("%d"):("##%d\n"), x);
    //   然后是理解   (x % 2) ? ("%d"):("##%d\n") 
    //               可以写成 ((x % 2) != 0)  ? ("%d"):("##%d\n") 
    //   这是三目运算符 你可以搜索一下   大体含义就如下
    printf("\n");
    for (x = 3; x < 6; x++)
    {
        if ((x % 2) != 0)   //如果表达式 x%2 结果为非零 也就是真  和判等的比较
        {
            printf("%d", x);
        }
        else
        {
            printf("##%d\n", x);
        }
    }
    return 0;
}



题目是 for(x=3; x<6;x++)
printf((x%2)?("%d"):("##%d\n"), x);
?????