C語言程式設計題

2021-08-20 20:32:01 字數 2643 閱讀 7796

程式**

目錄

1、遞迴

2、輸入乙個整數(任意位數),倒敘輸出:

3、將乙個陣列逆序放到原來陣列中。(考慮複雜度)

4、斐波那契數列:

5、排序

5.1氣泡排序

5.2、選擇排序

6、字串迴圈移動

7、計算字串最後乙個單詞長度

8、刪除乙個字串中指定的所有某個字元。

9、用乙個表示式判斷乙個整數是否在某兩個整數之間

求階乘n!分別用遞迴和迴圈法:

//求階乘

#include #include #include //遞迴

int function1(int n)else

}//迴圈

int function2(int n)

return num;

}int main()

函式執行結果如下:

10 //輸入10

3628800

the fun1 time is 0.000039 s

3628800

the fun2 running time is 0.000006 s

顯然遞迴消耗時間更長,不難理解,遞迴函式會像樹一樣向下分解,因此複雜度隨問題的規模呈幾何增長

//計算位數

int length_num(int n)

return flag;

}//輸入乙個整數(任意位數),倒敘輸出:

int fun3(int n)

//例如n=123,儲存為321

int n1 = 0;

for (int i = 0; i < flag; i++)

free(p);

return n1;

}

void fun4(int *p, int length)

//斐波那契,不用遞迴,演算法複雜度o(n)

int fun6(int n)

return now;

}}

//氣泡排序,順序 小---大,比較相鄰數,每次迴圈後,最後的數總是最大

void sort1(int *a, int n)

}//j

}//i

}

//選擇排序,每次選出i-n中最小值

void sort2(int *a, int n)

} int temp = a[i];

a[i] = a[min_flag];

a[min_flag] = temp;

}}

編寫乙個函式,作用是把乙個char組成的字串迴圈右移n個。比如原來是「abcdefghi」如果n=2,移位後應該是「hiabcdefgh」 函式頭是這樣的:

//pstr是指向以』\0』結尾的字串的指標

//steps是要求移動的n

void loopmove ( char * pstr, int steps )

方法1:

//移動字串迴圈1

void str_loop(char *p,int n,int loop_n)

char * temp;

temp = (char*)malloc(length * sizeof(char));

//求loop後的temp

loop_n = loop_n % (length - 1);

int j = 0;

for (int i =length-loop_n ; i < length - 1; i++)

for (int i = 0; i < length - loop_n; i++)//temp前半段賦值

temp[j] = '\0';

for (int i = 0; i < length; i++)//temp後半段賦值

free(temp);

}

方法2:使用字串函式

//移動字串迴圈2

void str_loop2(char *p, int loop_n)

//計算字串中最後乙個單詞長度,空格為分割(字串末尾可能有空格)

int last_world_length(char *p)

while (p[t]!=' ')

return count;

}

聯發科2017筆試題

//刪除字串中某個字元

void delete_ch(char * str, char c)

}//i

temp[j] = '\0';

printf("%s\n", temp);

strcpy_s(str, length, temp);

}

//用乙個表示式判斷乙個數b是否在兩個數a,c之間

int between(unsigned int a, unsigned b, unsigned c)

10、

C語言程式設計題

c語言程式設計題 寫函式求100以內的正整數的立方和,並在主程式中進行測試。要求如下 函式形式為 int sumcube int limit 引數limit為給定的立方和函式的上界 limit 100 如果limit為非正整數,則返回值為0,否則,返回limit以內的所有正整數的立方和。在main函...

C語言程式設計題

2020.8.2 給定乙個正整數 n 1 n 30 輸出外觀數列的第 n 項。注意 整數序列中的每一項將表示為乙個字串。外觀數列 是乙個整數序列,從數字 1 開始,序列中的每一項都是對前一項的描述。前五項如下 1.1 2.11 3.21 4.1211 5.111221char countandsay...

c語言程式設計題

1 把字串中asc 為奇數,元素下標為偶的刪除 include include void fun char s,char t t j 0 main 2 刪除空格 include include include void fun char str p str i 0 main 3 刪除結尾 inclu...