C 程序的输出 |设置 40(文件处理)
先决条件:文件处理
1. 这个程序通过操作文本文件的输出是什么?
#include
int main()
{
if (remove("myfile.txt") != 0)
perror("Error");
else
puts("Success");
return 0;
}
选项:
a) 错误
b) 成功
c) 运行时错误
d) 不能说
Answer : d
说明:如果 myfile.txt 存在,那么它将删除该文件。否则它会打印一条错误消息。
2. 这个程序的输出是什么?
#include
int main()
{
FILE* p;
int c;
int n = 0;
p = fopen("myfile.txt", "r");
if (p == NULL)
perror("Error opening file");
else {
do {
c = getc(p);
if (c == '$')
n++;
} while (c != EOF);
fclose(p);
printf("%d\n", n);
}
return 0;
}
选项:
a) '$' 符号的计数
b) 打开文件时出错
c) 上述任何一项
d) 没有提到的
Answer : c
说明:任何一个都是可能的 - 文件不存在或如果存在,它将打印 '$'字符的总数。
3. 这个程序在文本文件中的输出是什么?
#include
int main()
{
FILE* pFile;
char c;
pFile = fopen("sample.txt", "wt");
for (c = 'A'; c <= 'E'; c++) {
putc(c, pFile);
}
fclose(pFile);
return 0;
}
选项:
一)ABCD
b) ABC
c) ABCDE
d) 没有提到的
Answer : c
说明:在这个程序中,我们使用 putc函数从 A 打印到 E。
输出:
$ g++ out2.cpp
$ a.out
ABCDE
4、执行这个程序后myfile2文件的名字是什么?
#include
int main()
{
int result;
char oldname[] = "myfile2.txt";
char newname[] = "newname.txt";
result = rename(oldname, newname);
if (result == 0)
puts("success");
else
perror("Error");
return 0;
}
选项:
一个名字
b) 新的
c) 新名称
d) 没有提到的
Answer : c
说明:在这个程序中,我们使用 rename函数将 myfile2 重命名为 newname。
输出:
myfile2.txt is renamed to newname.txt
5.字符的多少数量都在newname.txt可用?
#include
int main()
{
FILE* p;
int n = 0;
p = fopen("newname.txt", "rb");
if (p == NULL)
perror("Error opening file");
else {
while (fgetc(p) != EOF) {
++n;
}
if (feof(p)) {
printf("%d\n", n);
} else
puts("End-of-File was not reached.");
fclose(p);
}
return 0;
}
选项:
一)10
b) 15
c) 取决于文本文件
d) 没有提到的
Answer : c
说明:在这个程序中,我们使用feof函数读取程序中的字符数。
输出:
$ g++ out4.cpp
$ a.out
162
相关文章:文件处理测验