您好,是您的输出格式不对printf("a=%db=%d\n",&a,&b);printf("x=%fy=%f\n",&x,&y);printf("c1=%cc2=%c\n",&c1,&c2);如果用&,表示的是地址值,然后将地址值按格式输出,这样是不对的应该将&全部去掉另外,您对字符c1和c2的输入格式也会产生错误在输入时改成scanf("%d%d",&c1,&c2);这样你在输入65 和97时才会将其Ascii码给字符,用%c将会给的是字符