条件运算符
#include<stdio.h>int main()
{
float fDues; //定义变量欠款数
float fAmount; //定义变量总欠款数
int iOntime; //定义是否按时归还
char cChar; //定义变量用户输入字符
printf("enter dues amount:\n"); //提示输入欠款金额
scanf("%f",&fDues); //用户输入
printf("On Time?(y/n)\n"); //提示是否按时还款
getchar(); //得到回车符(等待用户输入)
cChar=getchar(); //用户输入
iOntime=(cChar=='y')?1:0; //根据字符进行操作
fAmount=iOntime?fDues:(fDues*1.1); //根据iOntime值的真假进行操作
printf("the Amount is:%.2f\n",fAmount); //输出总欠款数
return 0; //结束
}
这里输入“y”后iOntime=(cChar=='y')?1:0;中iOntime的值不应该是1吗?为什么会输出fDues值