geacher跟scanf,我要哭了
程序代码:
#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"); /*显示信息,提示还款是否按时还款*/ scanf("%c",&cChar); /*得到回车字符*/ iOntime=(cChar=='y')?1:0; /*使用条件运算符根据字符选择进行选择操作*/ fAmount=iOntime?fDues:(fDues*1.1); /*使用条件运算符根据iOntime值的真假进行选择操作*/ printf("the Amount is:%.2f\n",fAmount);/*将计算的应还的总欠款数输出*/ return 0; }程序设计:还欠款的时候,如果还钱过期,就会增加10%的罚款。上面是我改动的。
程序代码:
#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; }这个是书上的,我很不理解,双方代码都一样,就在14行getchar跟scanf我换了一下,就不一样了,这是为什么,geacher();cChar=getchar;这个意思不是输入一个值赋给cChar吗?scanf("%c",&cChar);不一样吗,求告知。呜呜