请看看这个C语言题目,我不知道怎么才能在一个程序中可以分别比较整数、字符、实数、能提供点思路或程序吗

2025-01-31 00:39:36
推荐回答(2个)
回答1:

提供一点思路
如果是整数和字符的区分,可以在输入时,把所有的字符都存到一个数组里(或者字符串)
然后依次看看每个字符是数字还是字符

如果所有元素都是数字的话 if(char[c]>='0' && char[c]<='9') ,再调用 atoi 函数自动进行转换
如果所有元素都是字符的话,不知道你们定义里面哪些算字符,然后也进行判断,再进行相应处理
实数具体是什么概念?%f 浮点数吗?如果是这样,那就需要查找这个字符串里面是否包含 小数点 这个符号,然后其它所有字符都是数字

总之就是把所有的字符每个都存储起来,然后依次加以判断

回答2:

main:
输入//是不是想这么输入?10? : 12? : 14? : 15
解析输入.//解析出你要的数字或字符10 12 14 15
输入ch//你想比较整数、字符、还是实数?
switch(ch)
{
case 1: //比较整数
compare_int();//比较功能在此实现
break;
case 2:
compare_char();比较功能在此实现
break;
case 3:....
.....
default:break
}
如果想实现任意个数输入的,就在解析的时候算出个数,在比较功能里比较解析后的数字。
建议比较大小用排序的方法。如对解析后存放数据的data[];传参数据地址去排序compare_int(data);