大虾指教~~如何把输入的字符和数字都转换成对应的整数

btxl 2004-05-05 09:08:16
正在写程序遇到一个问题
如何把输入的字符和数字都转换成对应的整数输出
#include "Stdio.h"
#include "Conio.h"
main()
{ char *str[10];
printf("input string:");
scanf("%s",str);
printf("string:%d",str);
getch();
}
用以上的测试,输入1出来就-64了输入a也是-64
这是为什么阿
...全文
229 18 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
arrorbai 2004-05-05
  • 打赏
  • 举报
回复
我还不是很懂你的意思,要是你是要求输入一字符串,输出其ASC2码的话,我那样就可以了.但是要是输入的要是数字如 0 1 2 的话,是输出其本身,我就再改哈
Joyplayers 2004-05-05
  • 打赏
  • 举报
回复
#include<stdio.h>
#include<conio.h>
void main()
{
char ch[10];
int i;

printf("Please input characters\n");
scanf("%s",ch);
for(i=0;i<10;i++)
printf("%d\n",ch[i]);
getch();
btxl 2004-05-05
  • 打赏
  • 举报
回复
#include "string.h"
int main()
{int i;
char str[10];
printf("input string:");
scanf("%s\0",str);
printf("string:");
for(i=0; i<strlen(str); i++)
printf("%d ",str[i]);
getch();
}
这样行了 太感谢了
freefalcon 2004-05-05
  • 打赏
  • 举报
回复
#include "string.h"
int main(int argc, char** argv)
{
char str[10];
printf("input string:");
scanf("%s\0",str);
printf("string:");
for(int i=0; i<strlen(str); i++)
printf("%d ",str[i]);
}
btxl 2004-05-05
  • 打赏
  • 举报
回复
还有问题
图形bgi 编程
什么书比较好的入门的
arrorbai 2004-05-05
  • 打赏
  • 举报
回复
#include "Stdio.h"
#include "Conio.h"

void main()
{
const size=10;
int i;
char str[size];
gets(str);
for(i=0;i<size;i++) {
printf("%d\n",str[i]);
}
}
btxl 2004-05-05
  • 打赏
  • 举报
回复
得到asii
freefalcon 2004-05-05
  • 打赏
  • 举报
回复
晕,你把意思说清楚啊
是楼上他们说的转换成asii码吗?
或者说你输入的是16进制?要求获得其实际数值
btxl 2004-05-05
  • 打赏
  • 举报
回复
我需要把输入的字符串转换成int 再进行下面的工作 不是输出整数 而是转换数据类型
chsal 2004-05-05
  • 打赏
  • 举报
回复
把输入的字符和数字都转换成对应的整数输出

你的意思是把字符转化成对应的ASC码,把数字按其值输出么?
比如: 8----8
a----97
是么?
btxl 2004-05-05
  • 打赏
  • 举报
回复
还是一样 去掉*我输入a 出来0
想要下面的效果
#include "Stdio.h"
#include "Conio.h"

main()
{int a;
scanf("%s",&a);
printf("%d",a);
getch();
}
输入a 出来97
freefalcon 2004-05-05
  • 打赏
  • 举报
回复
#include "Stdio.h"
#include "Conio.h"

main()
{
char *str[10]; //这里声明不对吧,去掉*
printf("input string:");
scanf("%s\0",str);
printf("string:%d",atol(str));

getch();
}
btxl 2004-05-05
  • 打赏
  • 举报
回复
#include "Stdio.h"
#include "Conio.h"

main()
{ char *str[10];
printf("input string:");
scanf("%s\0",str);
printf("string:%d",atol(str));

getch();
}
是这样吗 输入字母还是出来0 阿
掐死温柔 2004-05-05
  • 打赏
  • 举报
回复
对了,你把字符串的接收尾端多加一个“\0"就行
btxl 2004-05-05
  • 打赏
  • 举报
回复
但我测试的时候输入字母 出来就是0
junnyfeng 2004-05-05
  • 打赏
  • 举报
回复
你的意思是变成相应的ASC2码么?
掐死温柔 2004-05-05
  • 打赏
  • 举报
回复
呵~~~~

你可以把输入值定义为字符型,把输出的属性定义为整型啊。记住,单字符可能以跟数字混合运算。如:"A=a-32".
freefalcon 2004-05-05
  • 打赏
  • 举报
回复
可以用库函数atoi,atol
printf("string:%d",atoi(str));

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧