| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 445 人关注过本帖
标题:输出结果为什么是这样?
只看楼主 加入收藏
chrispull
Rank: 1
等 级:新手上路
帖 子:30
专家分:1
注 册:2009-8-31
结帖率:50%
收藏
已结贴  问题点数:10 回复次数:1 
输出结果为什么是这样?
#include <stdio.h>
#include <stdlib.h>
int i, j, k;
char a1[50];
int s1[50];
int main()
{
 gets(a1);
 for (i=strlen(a1)-1; i>=0; --i)
 {
   s1[i]=(a1[strlen(a1)-i-1]-'0');/*这里不是a1[strlen(a1)-i-1]减去'0'的ASCII码48吗*/
   printf("%d\n",s1[i]);
  }
 getch();
}
输入98765
应该输出:-39;-40;-41;-42;-43但是在TC上输出:9,8,7,6,5
搜索更多相关主题的帖子: 结果 输出 
2009-12-26 18:49
风之上位
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:55
专家分:156
注 册:2009-12-20
收藏
得分:10 
9,8,7,6,5的ASCLL是57,56,55,54,53
%d是输出’9’的ASCLL码

[ 本帖最后由 风之上位 于 2009-12-26 19:49 编辑 ]
2009-12-26 19:41
快速回复:输出结果为什么是这样?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017966 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved