2006年9月全國(guó)等級(jí)考試三級(jí)c語(yǔ)言上機(jī)題庫(kù)(六十三)

字號(hào):

★☆題目63(無(wú)憂id 67、94 字符串移位題)
    程序prog1.c的功能是:把 s 字符串中的所有字符左移一個(gè)位置,串中的第一個(gè)字符移到最后。請(qǐng)考生編寫(xiě)函數(shù)chg(char *s)實(shí)現(xiàn)程序要求,最后調(diào)用函數(shù)readwriteDAT( )把結(jié)果輸出到bc2.out文件中。
    例如:s字符串中原有內(nèi)容為:Mn.123xyZ,則調(diào)用該函數(shù)后,結(jié)果為:n.123xyZM。
    注意:部分源程序存在文件prog1.c文件中。
    請(qǐng)勿改動(dòng)主函數(shù)main( )和輸出數(shù)據(jù)函數(shù)readwriteDAT()的內(nèi)容。
    #include
    #include
    #define N 81
    void readwriteDAT();
    void chg(char *s)
    { int i;
    char ch=*s;
    for(i=0;i    s[i]=s[i+1];
    s[strlen(s)-1]=ch;
    }
    main()
    {
    char a[ N ] ;
    clrscr();
    printf("Enter a string : "); gets(a);
    printf("The original string is : "); puts(a);
    chg(a);
    printf("The string after modified : ");
    puts(a);
    readwriteDAT();
    }
    void readwriteDAT()
    {
    int i ;
    char a[N] ;
    FILE *rf, *wf ;
    rf = fopen("bc2.in", "r") ;
    wf = fopen("bc2.out", "w") ;
    for(i = 0 ; i < 50 ; i++) {
    fscanf(rf, "%s", a) ;
    chg(a) ;
    fprintf(wf, "%s\n", a) ;
    }
    fclose(rf) ;
    fclose(wf) ;
    }