从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输入到一个磁盘文件"test"中保存.输入的字符串以"!"结束.
#include "stdafx.h"
#include "stdio.h"
int main(int argc, char* argv[])
{
char *p;
FILE *fp;
fp=fopen("c:\\test.txt","w");
while (*p!='!')
{
scanf("%s",&p);
if (97<=*p||*p<=122)
{
*p=*p-32;
}
fputc(*p,fp);
}
fclose(fp);
return 0;
}
我运行后,程序就崩掉了,为什么啊
----------------解决方案--------------------------------------------------------
从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输入到一个磁盘文件"test"中保存.输入的字符串以"!"结束.
#include "stdafx.h"
#include "stdio.h"
int main(int argc, char* argv[])
{
char *p;
FILE *fp;
fp=fopen("c:\\test.txt","w");
while (*p!='!')
{
scanf("%s",&p); //是%c吧!
if (97<=*p||*p<=122)
{
*p=*p-32;
}
fputc(*p,fp);
}
fclose(fp);
return 0;
}
我运行后,程序就崩掉了,为什么啊
----------------解决方案--------------------------------------------------------
if (97<=*p||*p<=122)
改成
if ('a'<=*p&&*p<='z')
还是崩掉了
----------------解决方案--------------------------------------------------------
楼上说的对。顶哟/呵呵~~~~~~~~~~~~~~~~~~~~~~~~~~~~
----------------解决方案--------------------------------------------------------
改那个没有意义的哈。
----------------解决方案--------------------------------------------------------
我是初学的,什么都不大懂
请大哥发个完整的程序给我看看,还有我改成%c还是崩掉了,请问我的程序问题出在哪里
----------------解决方案--------------------------------------------------------
#include "stdio.h"
int main(void)
{
char p;
FILE *fp;
fp=fopen("c:\\test.txt","w");
while (p!='!')
{
scanf("%c",&p);
if (97<=p&&p<=122)
{
p=p-32;
}
fputc(p,fp);
}
fclose(fp);
return 0;
}
OK
----------------解决方案--------------------------------------------------------
从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输入到一个磁盘文件"test"中保存.输入的字符串以"!"结束.
#include "stdafx.h"
#include "stdio.h"
int main(int argc, char* argv[]) //这边为什么这么写呀?初学哦!
{
char *p; //这边用指针下面就不对了。是在SCANF里的。
FILE *fp;
fp=fopen("c:\\test.txt","w");
while (*p!='!')
{
scanf("%s",&p); //指针的话输入不是“&p”而是"p"。还有不是%c你只是个char而已。
if (97<=*p||*p<=122) //这边的判断有问题。。。是且的关系!!!
{
*p=*p-32;
}
fputc(*p,fp);
}
fclose(fp);
return 0;
}
我运行后,程序就崩掉了,为什么啊
----------------解决方案--------------------------------------------------------
int main(int argc, char* argv[])
不知道为什么这么多人开始用这个参数了?
新手最好还是不要用了吧 int main() 就好
----------------解决方案--------------------------------------------------------
对。楼上说得对。这个东东我也不明白呢。
----------------解决方案--------------------------------------------------------