西北农林科技大学 c语言上机 实习8答案

2018-12-27 17:52

1. 文本文件中字符个数统计 #include #include int main(void) {

char ch, filename[200]; int count = 0; FILE *fp;

scanf(\

if((fp = fopen(filename, \ {

printf(\ exit(1); }

while((ch = fgetc(fp)) != EOF) {

count++; }

printf(\ if( fclose(fp)) {

printf(\ exit(1); }

return 0;

}

2. 文件中数据的排序 #include #include int main(void) {

int a[10], temp = 0, i = 0, j = 0, k = 0; char filename1[80], filename2[80]; FILE *fp1,*fp2;

scanf(\ scanf(\

if((fp1 = fopen(filename1, \ {

printf(\ exit(1); }

if((fp2 = fopen(filename2,\

{

printf(\ exit(1); }

for(i = 0; i < 10; i++)

{

fread(&a[i], sizeof(int), 1, fp1); /* 读出数据 */ }

for(i = 0; i < 9; i++) {

k = i;

for(j = i + 1; j < 10; j++) if(a[k] > a[j]) k = j; if(k != i) {

temp = a[k]; a[k] = a[i]; a[i] = temp; }

}

for(i = 0; i < 10; i++) /* {

fwrite(&a[i], sizeof(int), 1, fp2); }

if( fclose(fp1))

{

printf(\ exit(1); }

if( fclose(fp2))

{

printf(\ exit(1); }

/*验证结果的代码,请不要改动*/

if((fp1 = fopen(filename2, \ {

printf(\ exit(1); }

/* 排序 */ 写入数据 */ for(i = 0; i < 10; i++)

{

fread(&a[i], sizeof(int), 1, fp1); /* 读出数据 */ }

if( fclose(fp1)) {

printf(\ exit(1); }

for(i = 0; i < 9; i++) printf(\ printf(\

return 0; }

3 二进制数据文件/ #include #include int main(void)

{

int a[10], temp = 0, i = 0, j = 0, k = 0; char filename1[80], filename2[80]; FILE *fp1,*fp2; scanf(\ scanf(\

if((fp1 = fopen(filename1, \ {

printf(\ exit(1);

}

if((fp2 = fopen(filename2, \ {

printf(\ exit(1); }

for(i = 0; i < 10; i++) {

fscanf(fp1, \

fwrite(&a[i], sizeof(int), 1, fp2); }

if( fclose(fp1)) {

printf(\ exit(1); }

if( fclose(fp2))

{

printf(\ exit(1); }

if((fp1 = fopen(filename2, \ {

printf(\ exit(1); }

for(i = 0; i < 10; i++)

{

fread(&a[i], sizeof(int), 1, fp1); }

if( fclose(fp1)) {

printf(\ exit(1); }

for(i = 0; i < 9; i++) printf(\ printf(\

return 0;

}

4. 比较2个文本文件的内容 #include #include int main(void) {

int i = 1, flag = 0;

char filename1[80], filename2[80]; FILE *fp1, *fp2;

/* 读出数据 */ scanf(\

scanf(\

if((fp1 = fopen(filename1, \ {

printf(\ exit(1);

}

if((fp2 = fopen(filename2,\ {

printf(\ exit(1); }

while(!feof(fp1)) {

if(fgetc(fp1) == fgetc(fp2)) i++; else {

flag = 1; break; } }

if (flag)

printf(\ else

printf(\if( fclose(fp1)) {

printf(\ exit(1); }

if( fclose(fp2))

{

printf(\ exit(1); }

return 0; }


西北农林科技大学 c语言上机 实习8答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:CAD判断题题库

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: