
你好,是scanf语句的问题,我复制到我的编译器显示你的%lf错了,你的不是l,而是大写的i,所以把它们都改了就可以了,还有一个就是为什么一输入闪就没,因为你应该按的是调试,调试程序的话就是这样,程序完了没问题就会退出,但是你加getchar的话因为程序等待你输入,所以程序没结束,所以就不会出现那种现象
因为程序上写的时候格式化输入里面有逗号
程序应该是这么写的
scanf("%d,%d,%d", &a, &b, &c) ;如果想用空格隔开可以改成如下的:
scanf("%d%d%d", &a, &b, &c) ;一、这个问题的原因是:程序要求两个数字之间必须用英文逗号(,)分隔。在程序运行时,就必须用英文的逗号,如果不小心使用了汉语的逗号(,),将会影响第二个数字的读入。
二、中英文逗号的区分方法:二者模样稍有不同,请仔细观察;二者宽度不同,中文的逗号占两个字母的宽度,而英文的只占一个字母的宽度。
三、为避免中英文逗号的麻烦,编写程序时,不要加入逗号,建议把scanf语句中两个%f之间的逗号去掉,这样,系统默认两个数字之间用空格分隔。输入时,只要在两个数字之间按上一个(或几个都行)空格,就可以了。
希望对你有帮助。
package comzhhtest;
import javaawt;
import javaxswing;
import javaawtevent;
public class JB extends JFrame implements ActionListener
{
private JTextField Input1,Input2,Input3;
private JButton btnOK;
private static final String OK="计算";
private JTextField ShowAnswer;
public JB(String strTitle)
{
super(strTitle);
Container c=getContentPane();
csetLayout(new FlowLayout());
Input1=new JTextField(4);
Input2=new JTextField(4);
Input3=new JTextField(4);
ShowAnswer=new JTextField(4);
btnOK=new JButton(OK);
cadd(new JLabel("请输入待计算的两个数据:"));
cadd(Input1);
cadd(Input2);
cadd(new JLabel("请输入计算符(1 for + ,2 for - ,3 for ,4 for / ):"));
cadd(Input3);
cadd(new JLabel("计算结果:"));
cadd(ShowAnswer);
cadd(btnOK);
btnOKaddActionListener(this);
thisaddWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
Systemexit(0);
}
});
thissetSize(310,100);
thissetVisible(true);
}
public static void main(String[] args)
{
new JB("JButtonTest Testing!!!");
}
public void actionPerformed(ActionEvent e){
int num4 = 0;
int num1=IntegerparseInt(Input1getText());
int num2=IntegerparseInt(Input2getText());
int num3=IntegerparseInt(Input3getText());
if(num3==1){ num4=num1+num2 ;}
if(num3==2){ num4=num1-num2 ;}
if(num3==3){ num4=num1num2 ;}
if(num3==4){ num4=num1/num2 ;}
ShowAnswersetText(StringvalueOf(num4));
}
}
LZ。我是这么的。首先看你这个程序,因为 : 这种运算符会把引号左右两边看做一个整体。所以你的程序中关键那句话相当于这么写 x=(a<b)a:(b , x=(x<c)x:c , x=(d>x)x:d); 因为a<b成立,所以程序就直接把引号左边a的值赋给了x,所以运行的结果是1,而b后面的都是没用的。
第二,逗号表达式用法书上写的还是比较明白的,可以进行一连串的运算,然后整个的值等于最后的表达式的值。你这里是对 : 这种运算符的执行过程没搞清楚。
3逗号表达式很多时候都可以改成语句,只要符合语法规则就可以。很多时候一连串的运算而只要最后一个表达式的值时,就可以用逗号表达式了。
以上就是关于c语言编写程序时,结果是一堆数,怎么用逗号隔开全部的内容,包括:c语言编写程序时,结果是一堆数,怎么用逗号隔开、请问这个C程序,为什么在输入的时候,要用逗号来分隔输入的数值,不能用空格吗为什么、c语言中的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)