c语言printf和puts谁时间短,用printf不如puts,用puts不如用.txt

用printf不如puts,用puts不如用.txt

我认识一个初中生,他也是学c语言的。比我接触的久了。但是不知道是不是年纪的关系,他编程序的思维一直很简单,太简单了。

就在上次我还专门录了个短的录像给他,说他为什么。。。

得先说他的程序是什么先。

他程序的名字叫做“逃离死亡医院”

就是问答形式的,scanf 1,2,3。if

跳转。输出,跳转。。扬扬洒洒写了900多行代码,有八百以上的是用printf输出的文本信息。我无语了。他接触不少时间了吧。。。用puts输出不是更好一点,不用每次都在后面加换行符。写的更快,系统运行也快。900多行啊,都是printf()可以看出,他真的喜欢编程,一个14岁的孩子,不容易,傻的可爱吧。这里是对他点赞。

但是用puts我也是没那么有毅力去写。

用puts代替printf,用.txt代替puts。效果不是一般的好。

可以先建个文件夹,写上你像要的对话存成一个文本。用for 循环输出就是链表吧,也可能是指针。

比如先在

c盘一个叫duibai文件夹,里面有好多txt文本。有10句,有一百句都可以。也可以是一个.c文件。里面最好是一些复杂少用的。就是函数分装的好处,一个大牛说过,程序要先会拆,才会写。

FILE *fp;

char ch, filename[40], mode[4];

while ((ch = getchar()) != EOF)

{

gets(filename);gets(mode);

if ((fp = fopen(filename, mode)) != NULL)

{

printf("%s %s ");

fclose(fp);

。。。。

}

}这个是以各种模式打开一个文档,要读还是要写都可以。

上面说到,用for打开一个有一个又不用自己输入文件名的。也可以用结构体。

这个指针方面我也懵懂,所以不讨论,c语言很强大,只有想不到没有做不到。前提是要熟悉语法规则及实现目标功能的逻辑。

在说几句就不说了,还讨论我认识的那个,我不方便说他的名字,实际,我也不知道他的名字。但是有他电话。

他还写了几个画画版。恩,这个在我没有认识到那么多的时候,觉得好厉害啊。但是现在觉得,,,

不是说进步了就觉得牛差了。是我觉得不应该在一个函数或者一个功能上逗留太久。他写的就是围绕这这个语句。。xy光标跳动。

gotoxy一个非标准的goto语句。初学的话接触到dos命令都会欢喜。

但是,这只是一条语句,跟编程一点关系都没有。

就好像上次我在贴吧跟人吵架。说的是这个题:

char fun(char x, char y)

{

if(x)return y;

}

int main()

{

int a ='0', b ='1', c ='2';

printf("%c\n", fun(fun(a, b), fun(b, c)));

}这个程序没错。可以编译试过了。结果是2;

这其实不复杂。就是if (1)说明  成立。1就是对嘛。然后 y是

2。多余的话不说了。

我跟那人吵架说说什么呢?他非说这个跟ascii有关系,还说什么

‘0’跟0不一样的云云。一不一样谁不知道啊。但是跟这题有什么关系呢?就算一样最后都是‘0’和‘0’或者0和0,printf装换一下格式化输出来的,跟他脑中的‘0’跟0不一样的观点。是否相反。

如,

int a =‘0’;//两个都是'0'怎么还是不样呢?

printf(“%d%c”,a,a);

又如

int a =

0;//所以我大骂那人脑参,他说我都比。我也不说了,我明白一个道理,试图与愚蠢的人沟通,智慧让自己变的跟愚蠢一样。

printf(“%d%c”, a, a);

。。。最后看看他在他说特说的观点还他的源代码。说明‘0’跟0还有ascii表什么的。呵呵。咋就不提跟前面那个if(x)之后返回的程序了,这货脑偏的有点离谱。

他的代码,@我之后想证明的。

#include

int main()

{

int a ='0';

int b =0;

printf("%d\n%d\n", a, b);

return 0;

}然后说打脸吗?意思是想打我脸。但是我不同意。我回了下面的代码

#include

int main()

{

int a ='0';

int b =0;

printf("%c\n%d\n", a, b);

return 0;

}谁打谁脸?呵呵

好了不说了,贴上c primer plus 第三章练习代码。

#include

int main(void)

{

const int jkl = 10;

printf("%f", (float) jkl);

return 0;

}//下次,我会讨论const 。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值