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

2024-11-03 02:29:08
推荐回答(3个)
回答(1):

要求:
(1)使用字符型数组
(2)在主函数中输入字符串
(3)在子函数中实现小写转换成大写
(4)将结果保存到磁盘文件test.txt
#include
#include
#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;
}
}
}

回答(2):

#include

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);
}

回答(3):

可以试一下这个;
#include

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);
}