C语言问题求解 若已定义int a=25,b=14,c=19;以下三项运算符(?:)所构成的语句的

2025-03-04 02:41:52
推荐回答(3个)
回答1:

&&运算符发现b--<=2是false之后就不会判断后面的了,所以C是19,不是20

回答2:

程序基本没有问题啊。我修改优化了一下,代码如下:
#includeint main(void){ int choice,i; //double price; // 这里不用price了,优化掉了 for(i=1;i<=5;i++) { printf("[1]apples \n"); printf("[2]pears \n"); printf("[3]oranges \n"); printf("[4]grapes \n"); printf("[0]exit \n"); printf("Enter choice: "); scanf("%d",&choice); if(choice==0) break; switch(choice) { case 1: printf("[1]apple price=3.0\n\n"); // 直接将结果显示出来了,无需price中转,也不用在后面去写if else语句了。 break; case 2: printf("[2]pears price=2.5\n\n"); break; case 3: printf("[3]oranges price=4.1\n\n"); break; case 4: printf("[4]grapes price=10.2\n\n"); break;        //后面的defalut ,可以不要了。因为不是这里面的水果,根本就不用显示。 } } printf("Thanks \n"); return 0; }
是否可以解决您的问题?

回答3:

a=25,b=13,c=19