请问 c语言逐行输出1 2 3...100怎么写 除了用printf("%d"\n)这个 ,

请问 c语言逐行输出1 2 3...100怎么写 除了用printf("%d"\n)这个 , 代码中不能出现 \n ?

不用printf("%d\n"...这种办法的输出也有不少。下面提供一种:

#include "stdio.h"
#include "stdlib.h"
int main(void){
    int x;
    char str[4];
    for(x=1;x<=100;puts(itoa(x++,str,10)));
    return 0;
}追问

提示 itoa was not declared 怎么弄

不好意思啊 麻烦解释一下

追答

不是有#include "stdlib.h"这一句吗,怎么还会出这种错?那我就不知道了……
解释什么呢?

追问

#include
main()
{
int a;
for(a=1;a<=100;a++)
printf("%d\n",a);
}

这个\n换成对应的ascii码 能编译成功么

追答

当然不行了!""中间的是字符串,其中\是转义字符前导符,\n组成一个字符就是回车换行组合功能。而且\n在不同的函数中会有不同的值,在printf中的十进制10,你把printf("%d\n",a);
改成printf("%d%c",a,10);就可以了……

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-03-08
不能出现\n....
puts
或者使用\n的ascii值行不行追问

可以 谢谢啊

追答

我记得\n数值是10好像,在需要换行的地方输出看看

追问

哦 我看看

你先用puts写个 我试试ascii

追答

ascii值测试成功没问题的

追问

追答

puts是输出字符串,所以可以将数值转换成字符串后输出

追问

代码发出来我看看

那我的怎么不行啊

追答

你写的方式不对呗

追问

int a printf("%d",a)其中一部分

那怎么写

追答

我想收个红包成不成。。。。。

追问

用for循环嵌套 一个变量控制换行怎么样

追答

可以用for将变量自增用于输出,但你要怎么控制换行

把数值转换为字符串再用puts输出也很简单吗

当然使用ascii值也很简单。。。。。

追问

好吧 我都试试

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网