拷问俱乐部 七咲枫花:菜鸟求助 C语言

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/06 11:29:06
Main()
{
Int a,b,s1,s2;
Unsigned x;
a=10;b=-30;x=20;
S1=a+x;s2=b+x;
Printf(“a+x=%d,b+x=%d\n”,s1,s2);
}

我用的是Turbo C++ 3.0 在XP系统下用的!
我按照教材上的输入,没有错误!
但是最后按F9,老是要出错!
Error NONAME01.CPP 7:Function 'printf'should have a prototype
求助!
还有我在VC6.0里 无法创建EXE文件 不知道为什么?

问问题的老兄:这里问题很多阿,我主要的几个我给你指出来吧
(1)C中所有的标识符都是 大小写敏感的,就是说大写和小写不一样。像你上面的 S1 就应该写成 s1,Printf就应该写成 printf,
(2)没有 unsigned 类型,unsigned是一个修饰符用于修饰类型的如 usigned int 表示无符号的整形。你的 Unsigned X就不行了。
(3)你在 printf 中的“”不能是中文的,应该使用英文状态下的 "" 符号。
你的这些问题,我在刚学时也是遇见过。对于初学者都是常见。
继续努力。
下面是我改过来的程序就可以了:
#include "stdio.h"
void main()
{
int a,b,s1,s2;
unsigned int x; //添加了 int
a=10;b=-30;x=20;
s1=a+x;s2=b+x; //S1改为 s1
printf("a+x=%d,b+x=%d\n",s1,s2); //中文的“”改为英文状态的 ""
}

printf()中的引号应为英语模式下的引号,还有,C语言中关键字,函数,变量名都是区分大小写,比如Printf和printf是不一样的,另外主函数最好写上void表明没有返回值,养成这个习惯是有好处的,复制下面的程序试试:
void main()
{
int a,b,s1,s2;
unsigned x;
a=10;b=-30;x=20;
s1=a+x;s2=b+x;
printf("a+x=%d,b+x=%d\n",s1,s2);
}

把printf() 中的引号换成英语模式下输入的

把printf() 中的引号换成英语模式下输入的
同意一楼

老久没学过C了。你加上下面的头
#include "stdio.h"

""不等于“”