问题:
从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存,输入的字符串以'!'结束。
思路:
代码如下:
#include
#include
int main()
{char str[100];gets(str);printf("%s\n",str);int zhi=0;int i=0;FILE* fp =fopen("test","w"); //进行写文件操作 if(fp==NULL){perror("fopen");//一个出错函数 return 1;} for(i=0;str[i]!='!';i++)//当检测到数组中有字母时,直接写进文件中fputc(str[i],fp); {if(str[i]>='a'&&str[i]<='z'){str[i]=str[i]-32;fputc(str[i],fp);zhi++;//计算文件中字母的个数 }}fclose(fp);//写文件操作结束,关闭文件 fp=NULL;fp=fopen("test","r");//随后进行文件的读操作,把文件内容输出到str上,用str表示出来 fgets(str,zhi+1,fp);//给fp所指的文件内的内容,读取到str数组中,长度为文件中字符串长度,记 //得+1,给结束符加上 printf("%s\n",str);//输出显示 fclose(fp); //关闭文件 fp=NULL;return 0;}