| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3877 人关注过本帖, 1 人收藏
标题:看看这条二级C程序设计水题有什么高见~
只看楼主 加入收藏
初学编程的人
Rank: 2
等 级:论坛游民
威 望:2
帖 子:90
专家分:84
注 册:2017-3-12
收藏
得分:0 
在vs2010中可能行不通,它的c编译器必须先声明,不能中途声明,所以一定要有一行来声明。由于这个原因,论坛里很多例子只能转化成c++来编译。
~sprintf这个取反不懂
2017-03-28 11:29
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 51楼 初学编程的人
好吧~我笑了~第一次我用~被误解为取反~~

实际那个~可以忽略的~其实这是一个坎~~那个空也是和s有关~~想到就想到~想不到还要看多点书了解多点才行~

如果你了解到sscanf和scanf有什么不同就能想明白了~


[此贴子已经被作者于2017-3-28 11:45编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-03-28 11:41
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10541
专家分:42934
注 册:2014-5-20
收藏
得分:0 
使用sprintf应该都没问题,问题可能不在sprintf。
关键是对这个fun()了解多少,与fun()相关的数据有哪些?在哪里?
2017-03-28 11:59
初学编程的人
Rank: 2
等 级:论坛游民
威 望:2
帖 子:90
专家分:84
注 册:2017-3-12
收藏
得分:0 
(char *)&n这样写?我即使考试时知道可以这样也不会这么写。
2017-03-28 13:38
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
回复 54楼 初学编程的人
不是哦~scanf和sscanf之间省略了一个参数~printf和sprintf之间也省略了一个参数~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-03-28 14:02
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
好啦~是时候说一说了~

其实我提交的是

return sprinf(stdout,"%d",n);

在这里我还要向xzlxzlxzl版主道个歉~
先是感谢她指出了我的错误
其实这里不用标准输出流有些编译器过不了
改成sprintf((char*)stdout,"%d",n);

而且说如果调用其它函数就不能算是一行~谁知道其它函数里面有没有别的函数啊~所以这也是我值得反思的地方~

还有自己也反思了一下~我还要给xzlxzlxzl还有其他各位参与的道个歉啊~感觉不应该拿自己的代码作为标准的啊~毕竟w版说的对~不管白毛黑猫~抓到老鼠就是好猫~

所以这事我也不打算给某某高分某某低分了~散分结贴~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-03-28 16:38
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10541
专家分:42934
注 册:2014-5-20
收藏
得分:0 
以下是引用初学编程的人在2017-3-28 13:38:46的发言:

(char *)&n这样写?我即使考试时知道可以这样也不会这么写。

这个只从fun()局部来说是比较好的做法,但非常有限,int 转 char 也就 4byte,最多只能处理3个数字。
标准输入输出结构 _iob 有32byte,看起来比较好用点,但这种做法有点另类。
    printf("%#p\n", _iob);
    printf("%#p\n", _iob+1);
    printf("%#p\n", _iob+2);
2017-03-28 22:19
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10541
专家分:42934
注 册:2014-5-20
收藏
得分:0 
回复 56楼 九转星河
玩个性就是有点执着,无需较真。
2017-03-28 22:22
快速回复:看看这条二级C程序设计水题有什么高见~
数据加载中...
 
   



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

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