从键盘输入一行字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件"test.txt"

要求:(1)使用字符型数组
(2)在主函数中输入字符串
(3)在子函数中实现小写转换成大写
(4)将结果保存到磁盘文件test.txt

求大神啊~给正确答案,不要有错误啊~~%>_<%

要求:
(1)使用字符型数组
(2)在主函数中输入字符串
(3)在子函数中实现小写转换成大写
(4)将结果保存到磁盘文件test.txt
#include <stdio.h>
#include <stdlib.h>
#define strSize 100
int main()
{
void itos(char *str);
char str[strSize];
FILE *file;
int i;
printf("请输入一条字符串:\n");
while(gets(str))
{
itos(str);
file=fopen("test.txt","w");
for(i=0;str[i];i++)
{
fputc(str[i],file);
}
fclose(file);
printf("输入成功,请重新输入:\n");
while(getchar()!='\n')
{
continue;
}
}
system("PAUSE");
return 0;
}
void itos(char *str)
{
int i;
for(i=0;*(str+i);i++)
{
if(*(str+i)>='a'&&*(str+i)<='z')
{
*(str+i)-=32;
}
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-20
#include <stdio.h>

void convert(char *str)
{
while (*str!='\0')
{
if (*str>='a' && *str<='z')
{
*str-=32;
}
*str++;
}
}

main()
{
FILE *fp;
char str[100];
fp = fopen("test.txt","w");
gets(str);
convert(str);
fputs(str,fp);
fclose(fp);
}本回答被网友采纳
第2个回答  2011-12-27
可以试一下这个;
#include <stdio.h>

void convert(char *str)
{
while (*str!='\0')
{
if (*str>='a' && *str<='z')
{
*str-=32;
}
*str++;
}
}

main()
{
FILE *fp;
char str[100];

scanf("%s",str);

convert(str);

printf("%s",str);
fp = fopen("c:\\test.txt","w");
fwrite(&str,sizeof(str),1,fp);
fclose(fp);
}
相似回答