帮忙看一下程序错在哪里哦?
这是一个将字符串中小写字母变成大写字母的程序哦,不知道错在哪里?我用的是VC2008,书是讲VC6.0的,对了几遍了觉得和书上写的一样,可是执行的时候却错了源程序如下:
#include <stdio.h>
void main()
{
char s1[20],s2[20];
short i=0;
printf("输入字符串:");
scanf("%s",s1);
do {
s2[i] = (s1[i] >='a' && s1[i] <= 'z') ? s1[i] - 'a' +'A' : s1[i]);
}while(s1[i++]!='\0');
printf("s1=%s\n,s2=%s\n",s1,s2);
}
错误提示:
1>------ 已启动生成: 项目: lianxi, 配置: Debug Win32 ------
1>正在编译...
1>practice.cpp
1>d:\c++资料\c++源文件\lianxi\lianxi\practice.cpp(7) : warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(306) : 参见“scanf”的声明
1>d:\c++资料\c++源文件\lianxi\lianxi\practice.cpp(9) : error C2059: 语法错误 : “)”
1>生成日志保存在“file://d:\C++资料\C++源文件\lianxi\lianxi\Debug\BuildLog.htm”
1>lianxi - 1 个错误,1 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========