Description
文本文件score.dic
145811
145811
145812
145812
……
将文本文件score.dic中姓名的首字母改成大写,其它字符保持不变,将结果输出。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main()
{
/*******************/
/*******************/
}
主程序已给出,请根据提示完成缺失部分并提交该部分。
Input
n名学生的信息(班级编号,姓名,成绩)(文件读入)
Output
变换后的学生数据
Sample Input
无
Sample Output
145811 Fuxin 100 145811 Chengxian 90 145812 Zhangxue 92 145812 Lijun 88
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int
main()
{
char
curch,lastch;
/* 当前读入字符,上一次读入字符*/
FILE
*fin;
/
* 输入文件 */
fin=
fopen
(
"score.dic"
,
"r"
);
/
* 打开输入文件读 */
if
(!fin)
/
* 文件打开失败 */
{
fprintf
(stderr,
"error open file!\n"
);
/
* 输出错误信息到标准错误设备 */
exit
(-1);
/
* 强制退出,并返回错误码 */
}
while
(
fscanf
(fin,
"%c"
,&curch)!=EOF)
{
if
((curch>=
'a'
&&curch<=
'z'
)&&(lastch>
'z'
||lastch<</code>
'a'
))
{
lastch=curch;
curch-=32;
}
else
{
lastch=curch;
}
printf
(
"%c"
,curch);
}
fclose
(fin);
return
0;
}