2013年計算機等考三級《數據庫技術》上機模擬題(5)

字號:

為大家收集整理了《2013年計算機等考三級《數據庫技術》上機模擬題(5)》供大家參考,希望對大家有所幫助?。。?BR>    下列程序的功能是:在三位整數(100至999)中尋找符合條件的整數并依次從小到大存入數組中;它既是完全平方數,又是兩位數字相同,例如144、676等。請編制函數實現此功能,滿足該條件的整數的個數通過所編制的函數返回。最后調用函數writeDat()把結果輸出到文件out.dat中。請勿改動主函數main()和寫函數writeDat()的內容。
    #include
    int jsvalue(int bb[])
    {
    }
    main
    {
    int b[20],num;
    num=jsvalue(b);
    writeDat(num,b);
    }
    writeDat(int num,int b[])
    {
    FILE *out;
    int i;
    out=fopen(\"out.dat\",\"w\");
    fprintf(out,\"%d\\n\",num);
    for(i=0;i
    fclose(out);
    }
    --------------------------------------------------------------------------------
    注:注意在i==(int)sqrt(i)*(int)sqrt(i)中只有當i是完全平方數時開平方后再取整才不會丟失任何數據。
    int jsvalue(int bb[])
    {
    int i,j,k=0,g,s,b;
    for(i=100;i<=999;i++)
    {
    g=i;
    s=i/10;
    b=i/100;
    if((i==(int)sqrt(i)*(int)sqrt(i))&&(g==s//s==b//b==g))
    bb[k++]=i;
    }
    return k;
    }
    int jsvalue(int bb[])
    {
    int i,k=0;
    for(i=100;i<=999;i++)
    if((int)sqrt(i)*(int)sqrt(i)==i && (i/100==i || i/100==i/10 || i/10==i))
    bb[k++]=i;
    return k;
    }