VC2013 输入三个字符 转换为ASC对应的数值 求平均值后输出。程序如图所示 希望朋友能帮我解惑 谢谢

#include<stdio.h>void main(){ char a, b,c; float average; printf("请输入三个字符型数据:\n"); scanf_s("%c%c%c", &a, &b,&c); printf("第一个字符的数值:%d",a); printf("第二个字符的数值:%d",b); printf("第三个字符的数值:%d",c); average= (a + b + c) / 3; printf("The average is :%f", average); getchar(); getchar(); getchar();}

scanf_s在输出字符和字符串类型的时候,必须指定长度。

scanf_s("%c%c%c", &a,1, &b,1, &c,1);

追问

谢谢您 还想请教一个小问题,VC6.0里char型变量只存一个字符所以不用制定长度,我就想问问是不是VS2013里不指定长度的结果就是长度无限,并且只有第一个的值只赋给a

追答

这只是scanf_s的函数特性而已,你使用scanf就不需要指定长度。你出错的原因是参数不匹配。

参数不匹配而已。

温馨提示:答案为网友推荐,仅供参考
相似回答