C语言文件操作题,求解析 C语言文件操作题目求解。

C\u8bed\u8a00\u6307\u9488\u9009\u62e9\u9898 \u6c42\u89e3\u6790

int a[]; \u6570\u7ec4\u7684\u6570\u7ec4\u540d\u672c\u8d28\u4e0a\u662f\u4e2a\u5730\u5740\u5e38\u91cf\u3002\u793a\u4f8b\u7a0b\u5e8f\u5982\u4e0b\uff1a
#includeint main(){int a[]={1,2,3,4,5,6,7,8,9,10};int *p=a; //\u6307\u9488\u53d8\u91cfp\u6307\u5411\u6570\u7ec4aint i;printf("%x\n\n",a);//\u4ee516\u8fdb\u5236\u8f93\u51fa\u6570\u7ec4\u540da\u7684\u5730\u5740\u503cfor(i=0;i<10;i++)printf("%x\n",&a[i]);//\u4ee516\u8fdb\u5236\u8f93\u51fa\u6570\u7ec4\u5143\u7d20\u7684\u5730\u5740\u503cputchar('\n');for(i=0;i<10;i++)printf("%-4d",a[i]); //\u8f93\u51fa\u6570\u7ec4\u7684\u5143\u7d20return 0;}\u8fd0\u884c\u4e0a\u9762\u7a0b\u5e8f\uff0c\u4f60\u4f1a\u53d1\u73b0\u8f93\u51fa\u7684a\u7684\u503c\u4e0e\u6570\u7ec4\u9996\u5143\u7d20\u7684\u5730\u5740\u503c\u662f\u76f8\u540c\u7684\uff0c\u5373a == &a[0]\uff0c\u7531\u4e8e\u6570\u7ec4\u540d\u662f\u4e2a\u5730\u5740\u5e38\u91cf\uff0c\u5b83\u662f\u4e0d\u80fd\u8fdb\u884c\u81ea\u52a0\u6216\u81ea\u51cf\u8fd0\u7b97\u7684\uff0c\u4e5f\u4e0d\u80fd\u505a\u7b97\u672f\u8fd0\u7b97\u3002\u5f15\u7528\u6570\u7ec4\u5143\u7d20\u7684\u65b9\u5f0f\uff1a
\uff081\uff09a[i];
\uff082\uff09p[i]; //\u524d\u63d0\u662fp=a;\u5373\u6307\u9488\u53d8\u91cfp\u5df2\u7ecf\u6307\u5411\u6570\u7ec4a\u4e86
\uff083\uff09*p\u6216*(p+i)\u6216*(p++)\u6216*(p--) //\u53d8\u91cf\u662f\u53ef\u4ee5\u8fdb\u884c\u81ea\u52a0\u6216\u81ea\u51cf\u8fd0\u7b97\u7684
\u6307\u9488\u53d8\u91cf\u5b58\u653e\u7684\u662f\u5730\u5740\u503c\uff0c\u5373\u6307\u9488\u5c31\u662f\u5730\u5740\u3002
\u6570\u7ec4\u5143\u7d20\u5730\u5740\u7684\u8868\u793a\u65b9\u6cd5\uff1a
\uff081\uff09&a[i]; //&\u4e3a\u53d6\u5730\u5740\u7b26
\uff082\uff09&p[i]; //\u524d\u63d0\u662fp=a;\u5373\u6307\u9488\u53d8\u91cfp\u5df2\u7ecf\u6307\u5411\u6570\u7ec4a\u4e86
\uff083\uff09p++\u6216p--; //\u5176\u4e2d\u6307\u9488\u53d8\u91cfp\u8868\u793a\u5f53\u524d\u6307\u5411\u7684\u6570\u7ec4\u5143\u7d20
\uff084\uff09p+i\u6216p-i

\u521b\u5efa\u4e00\u4e2a\u4e34\u65f6\u6587\u4ef6tmp.txt\uff0c\u4ecezz.txt\u91cc\u8bfb\u51fa\u6570\u636e\u5e76\u6309\u7167\u8981\u6c42\u4fee\u6539\u4e4b\u540e\u5199\u5165\u4e34\u65f6\u6587\u4ef6tmp.txt\uff0c\u6574\u4e2a\u8fc7\u7a0b\u5b8c\u6210\u540e\u5220\u9664zz.txt\u518d\u628atmp.txt\u6539\u540d\u6210zz.txt

/*头文件,包含的函数库, stdio.h是C语言的输入输出库,里面有最常见的函数,你需要某个函数时可以man一下,上面有函数功能介绍和函数使用方法、即需要引用的头文件。*/
#include <stdio.h>
/*函数入口,C语言程序执行程序是从main函数开始执行的*/
main ()
{
/*定义一个文件标识号指针,后面用fopen函数打开某个文件时,该指针会指向文件的内容*/
FILE *fp;
/*定义一个整形数 i 和k,一个容量为6的整形数组a,其首地址为a*/
int i,a[6]={1,2,3,4,5,6},k;
/*fopen函数:函数功能: 打开一个文件
函数原型:FILE * fopen(const char * path,const char * mode);

相关函数:open,fclose,fopen_s[1] ,_wfopen

所需库: <stdio.h>
返回值: 文件顺利打开后,指向该流的文件指针就会被返回。若果文件打开失败则返回NULL,并把错误代码存在errno 中。
一般而言,打开文件后会作一些文件读取或写入的动作,若打开文件失败,接下来的读写动作也无法顺利进行,所以在fopen()后请作错误判断及处理
*/

fp = fopen("data.dat","w+");
/*将数组a首地址存的一个整数a[0]输入到文件指针fp所指向的data.dat文件里面*/
fprintf(fp,"%d\n",a[0]);

for (i=1;i<6;i++)
{
/*
函数名: fseek
功 能: 重定位流上的文件指针
用 法: int fseek(FILE *stream, long offset, int fromwhere);
描 述: 函数设置文件指针stream的位置。如果执行成功,stream将指向以fromwhere为基准,偏移offset个字 节的位置。如果执行失败(比如offset超过文件自身大小),则不改变 stream指向的位置。
*/
fseek(fp,0L,0);
/*这里是通过文件指针fp,在文件data.dat中读取一个整数写到k中*/
fscanf(fp,"%d",&k);
/*将文件指针偏移到文件首地址*/
fseek(fp,0L,0);
/*通过for循环,将数组a中第二个数到第六个数加上k后再写入到文件中*/
fprintf(fp,"%d\n",a[i]+k);
}
rewind(fp);
fscanf(fp,"%d",&k);
fclose(fp);
printf("%d\n",k);
}

  • C璇█鏂囦欢鎿嶄綔棰,姹傝В鏋
    绛旓細main (){ /*瀹氫箟涓涓鏂囦欢鏍囪瘑鍙锋寚閽堬紝鍚庨潰鐢╢open鍑芥暟鎵撳紑鏌愪釜鏂囦欢鏃讹紝璇ユ寚閽堜細鎸囧悜鏂囦欢鐨勫唴瀹*/ FILE *fp;/*瀹氫箟涓涓暣褰㈡暟 i 鍜宬,涓涓閲忎负6鐨勬暣褰㈡暟缁刟锛屽叾棣栧湴鍧涓篴*/ int i,a[6]={1,2,3,4,5,6},k;/*fopen鍑芥暟锛氬嚱鏁板姛鑳斤細 鎵撳紑涓涓枃浠 鍑芥暟鍘熷瀷锛欶ILE * fopen(const char...
  • 涓閬C璇█鍏充簬鏂囦欢鎿嶄綔鐨勯 棰樼洰鎰忔濇垜鎳傚氨鏄湪鐢诲湀鐨剋hile寰幆澶勬湁鐐...
    绛旓細棣栧厛 绗竴涓惊鐜剰鎬濆緢绠鍗曪紝灏辨槸濡傛灉*str1涓嶆槸'.'灏卞湪fil1.txt鏂囦欢鍑哄啓鍏*str1 鎵浠ユ渶鍚巉il1.txt 鏄唴瀹逛负YOU PLAN TO FAIL 16涓瓧绗 鐒跺悗绗簩涓惊鐜殑鎰忔濇槸濡傛灉file1娌℃湁鈥滆杩"鏂囦欢鐨勭粨灏(娉ㄦ剰鏄濊杩団滐紝鑰屼笉鏄"璇诲埌"),灏变粠 file1涓涓涓瓧绗︼紝鐒跺悗灏*str2鍐欏叆file2.txt 杩欓噷璁...
  • C璇█鏂囦欢鎿嶄綔闂銆傛眰瑙f儜銆
    绛旓細feof鏄祴璇曟枃浠跺熬锛屽彧鏈夊湪璇曞浘鎿嶄綔鏂囦欢灏句互鍚庡唴瀹规椂锛宖eof鎵嶈繑鍥 true銆備妇涓緥瀛愶紝濡傛灉鏂囦欢鏈10涓瓧绗︼紝鐜板湪鐩存帴璇诲彇浜10涓瓧绗﹀悗锛屾祴璇昮eof杩斿洖鐨勬槸0锛屽洜涓鸿繖鏄繕鏈皾璇曡鍙栫11涓傜敱浜 fgetc 鍑芥暟鍙互杩斿洖 EOF 鏍囧織锛屾墍浠ヤ竴鑸兘鏄繖鏍峰啓鐨 int ch;while ((ch = fgetc(in)) != EOF) { fputc(...
  • 鐢ㄦ爣鍑C璇█搴撹繘琛鏂囦欢鎿嶄綔鏃,鑻ヨ浠+鏂瑰紡鎵撳紑涓涓繁缁忓瓨鍦ㄧ殑鏂囦欢,鍒...
    绛旓細銆愮瓟妗堛戯細A fopen鏂囦欢鎵撳紑妯″紡r浠h〃read鐨勭畝鍐欙紝+浠h〃鍙鍙啓锛寃浠h〃write锛宐浠h〃bit浜岃繘鍒朵綅锛宼浠h〃textr=rt锛屾墦寮鍙鏂囦欢锛璇ユ枃浠跺繀椤诲瓨鍦╮+ =rt+锛屾墦寮鍙鍙啓鐨勬枃浠讹紝璇ユ枃浠跺繀椤诲瓨鍦╮b 锛屽彧璇伙紝鎵撳紑涓涓簩杩涘埗鏂囦欢锛岃鏂囦欢蹇呴』瀛樺湪rb+ 锛屾墦寮涓涓簩杩涘埗鏂囦欢锛屽厑璁歌鍜屽啓锛岃鏂囦欢蹇呴』瀛樺湪w=...
  • C璇█鍏充簬鏂囦欢鎿嶄綔鐨勯棶棰:涓嬮潰鏄唬鐮:
    绛旓細fscanf(pfile,"%d",&i);浣跨敤fscanf瀵鏂囦欢杩涜璇诲彇鏃讹紝濡傛灉鐢%d杩涜鏍煎紡锛屽氨鏄璇诲彇鏁村瀷锛屽苟鎶婂艰祴鍊肩粰鍙橀噺i 杩欏悓scanf涓鏍凤紝閬囧埌绌虹櫧瀛楃鎴栬呭洖杞︽椂鍋滄璇诲叆锛岃繖鏍凤紝绗竴娆¤鍏ュ氨鏄123456789123456 杩欒繙杩滆秴杩嘔nt瀹氫箟鐨勬渶澶у(32浣嶆満锛2^31-1),鎵浠ュ皢杩涜鎴彇锛屼細鍑虹幇璐熸暟锛岃 123456鍦ㄥ叾鑼冨洿锛岃兘...
  • C璇█鏂囦欢鎿嶄綔闂
    绛旓細int main(){ char fpath[100];long int len;char k,buff1 = '1',buff2 = '2';char ChangDate[2] = {'F','F'};FILE *fp = NULL;printf("\nbuff1 = %c,buff2 = %c\n",buff1,buff2);printf("\n璇疯緭鍏鏂囦欢鐨勫畬鏁磋矾寰勫悕鍜屾枃浠跺悕\nfilepath =");scanf("%s",fpath);if(...
  • C璇█鏂囦欢鎿嶄綔銆姹傝В銆
    绛旓細printf("鏂囦欢[%s]鎵撳紑澶辫触",YouFilePath);exit(1);} fwrite(&person[i],sizeof(person[0]),sizeof(person)/sizeof(person[0]),wfp);//涓娆℃у啓瀹屽叏閮ㄥ唴瀹 fclose(wfp);...FILE *rfp;if((rfp=fopen(YouFilePath,"rb"))==NULL} { printf("鏂囦欢[%s]鎵撳紑澶辫触",YouFilePath);exit(1);...
  • 鍏充簬C璇█鏂囦欢鎿嶄綔鐨勯棶棰,姹澶х璇﹁В,鎮祻30鍒嗏︹
    绛旓細, class, name, id, age, dept, lab, paper); /* 璇诲嚭浼氶夯鐑︾偣 */ fscanf(pf, "%10s %10s %10s %10s %10s %10s %10s\n", class, name, id, age, dept, lab, paper); /* 杩欐牱鐨勮瘽锛屽瓧娈甸噷涓嶈兘鏈夌┖鏍硷紝鍚﹀垯浼氫贡鎺夈傚鏋滀竴瀹氳鏀寔绌烘牸鐨勮瘽锛屽彧鑳戒竴琛屼竴琛屽鐞嗕簡銆 */ ...
  • C璇█鏂囦欢鎿嶄綔闂
    绛旓細鍘熷洜鍛 鏄洜涓轰綘鐨鏂囦欢鎸囬拡宸茬粡绉诲姩鍒颁簡鏂囦欢鐨勬湯灏 浣犺繕鍦ㄨ鍙 鎵浠ヤ細姝诲惊鐜 鍙渶瑕佸湪input_file鍑芥暟鐨刢h = getchar();鍚庨潰鍔犱竴鍙 fseek(fp,0,SEEK_SET);灏卞ソ浜嗐備笂闈㈤偅涓鍙ヤ唬鐮佺殑鎰忔濇槸鎶婃枃浠舵寚閽堢Щ鍔ㄥ埌鏂囦欢鐨勫紑澶翠綅缃
  • C璇█ 鏂囦欢鎿嶄綔闂
    绛旓細C璇█涓鏂囦欢杩涜鎿嶄綔蹇呴』棣栧厛鎵撳紑鏂囦欢,鎵撳紑鏂囦欢涓昏娑夊強鍒癴open鍑芥暟銆俧open鍑芥暟鐨勫師鍨嬩负 FILE* fopen(const char *path,const char *mode) 鍏朵腑path涓烘枃浠惰矾寰,mode涓烘墦寮鏂瑰紡 1)瀵逛簬鏂囦欢璺緞,鍙渶娉ㄦ剰鑻ユ湭鏄庣‘缁欏嚭缁濆璺緞,鍒欓粯璁よ鏂囦欢鍦ㄥ伐绋嬬殑鐩綍涓嬨傝嫢闇缁欏嚭缁濆璺緞,鍒欐敞鎰忚浆涔夊瓧绗'\',姣斿鏈夋枃浠秚est.txt...
  • 扩展阅读:扫一扫题目出答案 ... c语言编程例题及解析 ... c语言试题及答案解析 ... c语言三个基本要素 ... c语言常用头文件大全 ... c语言基础知识必背 ... c++编程 ... 大一c语言考试题及解析 ... 编程题库100题 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网