C/C++形式转换问题求解

360U1227000649 |浏览591次
收藏|2019/08/15 07:12

满意回答

2019/08/15 07:23

字母p是字符型类型与单字节整数类型通用,所以输出的是整数或字符。

gexingqianming

其他回答(7)
  • float 不能赋值字符型的
    回答于 2019/08/15 09:17
  • C语言中,不能用不匹配的类型输出变量的值,这个是常识而整形的话,因为字符型是兼容整形的,只是数值范围不同,这个也是常识
    回答于 2019/08/15 09:10
  • float必须带尾数,你换成字符型无法识别
    回答于 2019/08/15 08:41
  • 这个公式代入的不对
    回答于 2019/08/15 08:32
  • 这还少的呢,什么东西,看的我发蒙
    回答于 2019/08/15 08:24
  • 这个太难了,下一题。
    回答于 2019/08/15 07:58
  • 正常C代码如下:#include <stdio.h>void main(){ char c; int letter=0,space=0,digit=0,other=0; printf("请输入一串字符,我们将统计各种字符的数量:\n"); while ((c=getchar()) != '\n') { if ((c>='a' && c<='z' || c>='A' && c<='Z')) letter++; else if(c==' ') space++; else if(c>='0' && c<= '9') digit++; else other++; } printf("字母=%d,空格=%d,数字=%d,其它=%d,\n",letter,space,digit,other);}想换成C++代码,改进如下过渡格式:#include <iostream.h>#include <stdio.h>void main(){ char c; int letter=0,space=0,digit=0,other=0,flag=1; cout << "请输入一串字符,我们将统计各种字符数量:" << endl; while ((c=getchar()) != '\n') { if(c=='\n') break; if(c >= 'a' && c<= 'z' || c >= 'A' && c<= 'Z') letter++; else if(c== ' ') space++; else if(c>= '0' && c<='9') digit++; else other++; } cout << "字母= "<< letter << endl; cout << "空格= "<< space<< endl; cout << "数字= "<< digit<< endl; cout << "其它= "<< other<< endl;}但并不是真正的C++代码,最终修改如下:#include <iostream.h>void main(){ char c; int letter=0,space=0,digit=0,other=0,flag=1; cout << "请输入一串字符,我们将统计各种字符数量:" << endl; cin >> c; while ( c != '\n') { if(c=='\n') break; if(c >= 'a' && c<= 'z' || c >= 'A' && c<= 'Z') letter++; else if(c== ' ') space++; else if(c>= '0' && c<='9') digit++; else other++; cin >> c; } cout << "字母= "<< letter << endl; cout << "空格= "<< space<< endl; cout << "数字= "<< digit<< endl; cout << "其它= "<< other<< endl;
    回答于 2019/08/15 07:36
0人关注该问题
+1

 加载中...