当前位置: 代码迷 >> C语言 >> [讨论]这些问题让我纳闷
  详细解决方案

[讨论]这些问题让我纳闷

热度:140   发布时间:2007-08-21 08:23:48.0
[讨论]这些问题让我纳闷

因为自己刚刚开始学习C语言,我用的是清华 谭教授 的C程序设计(第三版)

里面的程序框架是:

#include"stdio.h"
void main()
{
............;
............;
}

我还注意到有的课本和材料中出现了:

#include"stdio.h"
int main()
{
...........;
return 0;
}

这两个有什么区别吗? 或者是不是中间存在什么优缺点?


另外我还有一个问题:在做身份证号码验证程序时,中间有个数字和字符之间的转换:


输入是以char定义的数组(因为有的身份证号码存在X的情况),但是在数字输入之后有个加权运算,那我怎么样才

能把字符形式输入的数字转换成整型的数字呢? 谢谢!


====================================因为我是菜鸟,所以我有为什么======================================

搜索更多相关的解决方案: 纳闷  

----------------解决方案--------------------------------------------------------

编译都可以,不过建议用下面的,新标准的规定
记得在论坛上看到了说这个帖子
叫c/c++误区之一:void main()


----------------解决方案--------------------------------------------------------
http://bbs.bc-cn.net/viewthread.php?tid=163896&extra=&page=10#289347
这里有我收集的一些误区,看看吧,记得回帖哦
----------------解决方案--------------------------------------------------------
谢谢了 那么

----------------解决方案--------------------------------------------------------

int main(void)


int main()

两者有什么区别,int main()可不可以用在C中 ?


谢谢


----------------解决方案--------------------------------------------------------

一样的呀


----------------解决方案--------------------------------------------------------
可以用
----------------解决方案--------------------------------------------------------
以下是引用xiaosan669在2007-8-21 8:23:48的发言:


另外我还有一个问题:在做身份证号码验证程序时,中间有个数字和字符之间的转换:


输入是以char定义的数组(因为有的身份证号码存在X的情况),但是在数字输入之后有个加权运算,那我怎么样才

能把字符形式输入的数字转换成整型的数字呢? 谢谢!





====================================因为我是菜鸟,所以我有为什么======================================

其实,字符也是以一个整形数字的形式存储表示的。你只需要把每个字符减48,然后计算、输出就ok了。
下面的例子也许能帮助你

#include <stdio.h>

int main( void )
{
char c;
c = getchar();
printf("%d\t%d\n",c,c-48);
return 0;
}


----------------解决方案--------------------------------------------------------

谢谢了啊 懂了 呵呵


----------------解决方案--------------------------------------------------------
  相关解决方案