C語言基礎 C語言一些簡單題目(三)

2021-08-15 14:57:03 字數 3667 閱讀 8238

完成猜數字遊戲

#define _crt_secure_no_warnings 1

#include#includevoid menu()

int main()

else if (num < input)

else

}break;

case 2:

i = 0;

break;

default:

printf("選擇錯誤");

break;

} }system("pause");

return 0;

}

寫**可以在整型有序陣列中查詢想要的數字,找到了返回下標,找不到返回-1.(折半查詢)

#define _crt_secure_no_warnings 1

#include#includetypedef int type;

int binary_search(type arr, int sz, int key)

/*二分查詢*/

int left = 0;

int right = sz - 1;

while (left <= right)

else if (arr[mid] < key)

else

} /*如果到了這裡表示沒有找到*/

return -1;

}int main() ;

int sz = sizeof(arr) / sizeof(arr[0]);

int key = 0;

int ret = binary_search(arr, sz, key);

printf("expect 0, actual :%d", ret);

system("pause");

return 0;

}

編寫**模擬三次密碼輸入的場景

#define _crt_secure_no_warnings 1

#include#include#include/*模擬三次輸入密碼的情況*/

int main()

printf("請輸入密碼:");

char mes2[20];

scanf("%s", mes2);

if (strcmp(mes, mes2) == 0)

else

} system("pause");

return 0;

}

編寫乙個程式,可以一直接收鍵盤字元,如果是小寫字元就輸出對應的大寫字元,如果接收的是大寫字元,就輸出對應的小寫字元,如果是數字不輸出

#define _crt_secure_no_warnings 1

#include#includeint main()

else if (ch >= 'a' && ch <= 'z')

else if(ch > '0' && ch < '9')

else

} system("pause");

return 0;

}

寫乙個函式返回引數二進位制中 1 的個數

#define _crt_secure_no_warnings 1

#include#includeint count_one_bits(unsigned int value)

value /= 2;

} return count;

}int main()

輸出乙個整數的每一位

逆序輸出:

#define _crt_secure_no_warnings 1

#include#includeint main()

printf("%d ", num % 10);

num /= 10;

} system("pause");

return 0;

}

正序輸出(遞迴):

#define _crt_secure_no_warnings 1

#include#include/*遞迴,正序*/

void print(int num)

if (num >= 10)

/*num在10以內了*/

printf("%d ", num % 10);

}int main()

程式設計實現: 

兩個int(32位)整數m和n的二進位制表達中,有多少個位(bit)不同? 

輸入例子: 

1999 2299 

輸出例子:7

#define _crt_secure_no_warnings 1

#include#includeint main() ;

int b[32] = ;

int num1 = -1999;

int num2 = 2299;

for (; i < 32; i++)

/*現在把num1和num2兩個數的所有位分別存入到了a和b兩個陣列裡面*/

int count = 0;

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

} printf("expect 7,actual:%d", count);

system("pause");

return 0;

}

獲取乙個數二進位制序列中所有的偶數字和奇數字,分別輸出二進位制序列

#define _crt_secure_no_warnings 1

#include#include#includeint main() ;

if (num >= 0)

/*現在陣列arr裡面是num的二進位制序列*/

printf("該二進位制的奇數序列為:\n");

for (i = 0; i < 32; i += 2)

printf("\n");

printf("該二進位制的偶數序列為:\n");

for ( i = 1; i < 32; i += 2)

} printf("\n");

} else

printf("該二進位制序列的奇數序列為:\n");

for (i = 31; i >= 0; i -= 2)

printf("該二進位制序列的偶數序列為:\n");

for (i = 30; i >= 0; i -= 2)

} system("pause");

return 0;

}

一些有趣的C語言題目

問題2 寫乙個 標準 巨集,這個巨集輸入兩個引數並返回較小的乙個 答 define min x,y x y x y 結尾沒有 注意幾個括號 問題3 與 的作用?答 是把巨集引數轉化為字串的運算子,是把兩個巨集引數連線的運算子。例如 define str arg arg則巨集str 你好 展開時為 你...

C語言基礎 一些C語言小程式(一)

1,請把從1到1000的數列印出來,不能使用任何的迴圈語句或是條件語句 include void func int i void func int i int main 2,向乙個有序的單鏈表中插入乙個新的節點 include include typedef struct node node int...

C語言 一些有意思的C語言題目,

有一些有意思的題目,然後我們來試著做一下 5位運動員參加了10公尺臺跳水比賽,有人讓他們 比賽結果 a選手說 b第一,我第三。b選手說 我第二,e第四。c選手說 我第一,d第二。d選手說 c最後,我第三。e選手說 我第四,a第一。排名判斷 include int main 日本某地發生了一件 案,警...