国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章?。?)

這篇具有很好參考價(jià)值的文章主要介紹了C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章?。?)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

  • ??博客主頁(yè):江池俊的博客
  • ?收錄專欄:C語(yǔ)言刷題專欄
  • ??專欄推薦:?C語(yǔ)言初階之路 ?C語(yǔ)言進(jìn)階之路
  • ??代碼倉(cāng)庫(kù):江池俊的代碼倉(cāng)庫(kù)
  • ??歡迎大家點(diǎn)贊??評(píng)論??收藏?
  • ??表情分享:??????????????????????????????????

C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章?。?),C語(yǔ)言刷題專欄,c語(yǔ)言,開(kāi)發(fā)語(yǔ)言,學(xué)習(xí),經(jīng)驗(yàn)分享,筆記


??前言:

  • 本專欄每篇練習(xí)將包括 5個(gè)選擇題 + 2個(gè)編程題,將涵蓋C語(yǔ)言的不同方面,包括基礎(chǔ)語(yǔ)法、數(shù)據(jù)類型、控制結(jié)構(gòu)、數(shù)組、指針和函數(shù)等。通過(guò)練習(xí),你將逐步掌握C語(yǔ)言的基礎(chǔ)知識(shí)和常見(jiàn)問(wèn)題,提高你的編程技巧和解決問(wèn)題的能力。
  • 我希望這個(gè)博客能夠?yàn)槟闾峁┯袃r(jià)值的練習(xí)資源,讓你在實(shí)踐中不斷進(jìn)步。同時(shí),我們也鼓勵(lì)你在練習(xí)過(guò)程中進(jìn)行思考和創(chuàng)新,嘗試使用不同的編程方法和技巧。
  • 讓我們一起挑戰(zhàn)C語(yǔ)言練習(xí)題,攻克每一個(gè)難點(diǎn),不斷提升自己的編程技能!在評(píng)論區(qū)分享你的練習(xí)心得和問(wèn)題,與我們一起交流和成長(zhǎng)。

??選擇題

  1. 執(zhí)行下面程序,正確的輸出是( )
int x = 5, y = 7;
void swap()
{
	int z;
	z = x;
	x = y;
	y = z;
}
int main()
{
	int x = 3, y = 8;
	swap();
	printf("%d,%d\n",x, y);
	return 0;
}

A: 5,7 ? B: 7,5 ? C: 3,8 ? D: 8,3

??正確答案:C
【解析】:
swap函數(shù)調(diào)用時(shí)用的是全局變量,主函數(shù)中定義的變量只在主函數(shù)中有效,因?yàn)橹骱瘮?shù)也是一個(gè)函數(shù),它與其他函數(shù)是平行關(guān)系;輸出語(yǔ)句這里,考慮局部?jī)?yōu)先的原則,故打印的x值為3,y的值為8

  1. 以下不正確的定義語(yǔ)句是( )

A: double x[5] = {2.0, 4.0, 6.0, 8.0, 10.0};

B: char c2[] = {‘\x10’, ‘\xa’, ‘\8’};

C: char c1[] = {‘1’,‘2’,‘3’,‘4’,‘5’};

D: int y[5+3]={0, 1, 3, 5, 7, 9};

??正確答案:B
【解析】:
本題B選項(xiàng)考查轉(zhuǎn)義字符,有如下格式,但八進(jìn)制數(shù)字是0-7,沒(méi)有8,故B選項(xiàng)中’\8’是錯(cuò)誤的
\ddd ddd表示1到3個(gè)八進(jìn)制數(shù) 如:\130 轉(zhuǎn)義為 字符X
\xhh hh表示1到2位十六進(jìn)制數(shù) 如:\x30 轉(zhuǎn)義為 字符0

  1. test.c 文件中包括如下語(yǔ)句,文件中定義的四個(gè)變量中,是指針類型的變量為【多選】( )
#define INT_PTR int*
typedef int* int_ptr;
INT_PTR a, b;
int_ptr c, d;

A: a ? B: b ? C: c ? D: d

??正確答案:ACD
【解析】:易錯(cuò)題
因?yàn)?define是宏定義,僅僅是直接替換; INT_PTR a, b, 進(jìn)行宏替換后代碼是這樣的:int *a, b;這里的int *a的類型,b的類型是int,故此次b只是int類型。而typedef是把該類型定義一個(gè)別名,別名是一個(gè)獨(dú)立的類型了,使用這個(gè)類型創(chuàng)建的變量都是這個(gè)類型的。所以 a,c,d才是指針類型。

  1. 若給定條件表達(dá)式 (M)?(a++):(a--) ,則其中表達(dá)式 M ( )

A: 和 (M ==0) 等價(jià) ? B: 和 (M ==1) 等價(jià) ? C: 和(M !=0 )等價(jià) ? D: 和(M != 1)等價(jià)

??正確答案:C
【解析】:易錯(cuò)題
給定條件表達(dá)式(M)?(a++):(a--)。 (表達(dá)式1)? (表達(dá)式2): (表達(dá)式3)為三目運(yùn)算符。

  • 三目運(yùn)算符計(jì)算規(guī)則為:先判斷表達(dá)式1是否為真,若為真,則計(jì)算表達(dá)式2,并將表達(dá)式2的結(jié)果作為整個(gè)表達(dá)式最終的結(jié)果,表達(dá)式3不計(jì)算;否則,表達(dá)式3的結(jié)果為最終結(jié)果,表達(dá)式2不計(jì)算。
  • 在此表達(dá)式中,若M=0,為假,計(jì)算a--; 若M≠0,為真,計(jì)算a++; 若要求與M等價(jià),則要滿足M0時(shí)為假,取非0數(shù)值時(shí)為真。
    C選項(xiàng)中:假定M0,則M表示假,當(dāng)M0時(shí),表達(dá)式M!=0不成立,為假,計(jì)算a--;當(dāng)M取非0數(shù)值時(shí),M為真,表達(dá)式M!=0成立,為真,計(jì)算a++; 符合題意,選C
  1. 有如下定義語(yǔ)句,則正確的輸入語(yǔ)句是【多選】( )
int b;
char c[10];

A: scanf(“%d%s”,&b,&c); ? ? B: scanf(“%d%s”,&b,c);

C: scanf(“%d%s”,b,c); ? ? ? D: scanf(“%d%s”,b,&c);

??正確答案:AB
【解析】:
根據(jù)C語(yǔ)言中的scanf函數(shù),正確的輸入語(yǔ)句應(yīng)該將變量的地址作為參數(shù)傳遞給scanf函數(shù)。
選項(xiàng)A和B是正確的輸入語(yǔ)句。在選項(xiàng)A中,雖然在第二個(gè)參數(shù)中使用"&c" 與一般情況下使用數(shù)組名" c " (即選項(xiàng)B) 稍有不同,但兩者地址值是一樣的,程序的效果相同,因?yàn)樗硎緮?shù)組首元素的地址。而選項(xiàng)C和D均不正確,因?yàn)樵谧x取整數(shù)時(shí)需要使用"&b"來(lái)獲取變量b的地址。


??編程題

??打印從1到最大的n位數(shù)

【牛客網(wǎng)鏈接:JZ17 打印從1到最大的n位數(shù)】

【題目信息】:
C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章?。?),C語(yǔ)言刷題專欄,c語(yǔ)言,開(kāi)發(fā)語(yǔ)言,學(xué)習(xí),經(jīng)驗(yàn)分享,筆記
【答案解析】:

這里首先要清楚n位數(shù)中最大的數(shù)字,實(shí)際上就是 10^n - 1 。 比如:

1位數(shù): 10^1 - 1
2位數(shù): 10^2 - 1
3位數(shù): 10^3 - 1
...

這個(gè)清楚后動(dòng)態(tài)申請(qǐng)空間,將數(shù)值填入就可以了,需要注意的是數(shù)組下標(biāo)從0開(kāi)始,而數(shù)值從1開(kāi)始

int* printNumbers(int n, int* returnSize) 
{
	*returnSize = pow(10, n) - 1; //確定最大的數(shù)字
	int* arr = (int*)malloc(sizeof(int) * (*returnSize));//申請(qǐng)足夠大小的空間
	for (int i = 0; i < *returnSize; i++) 
	{
		arr[i] = i + 1;//下標(biāo)從0開(kāi)始,而數(shù)值從1開(kāi)始
	} 
	return arr;
}

【知識(shí)拓展】:

(1)pow函數(shù)

C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章?。?),C語(yǔ)言刷題專欄,c語(yǔ)言,開(kāi)發(fā)語(yǔ)言,學(xué)習(xí),經(jīng)驗(yàn)分享,筆記
(2)malloc函數(shù)

C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章?。?),C語(yǔ)言刷題專欄,c語(yǔ)言,開(kāi)發(fā)語(yǔ)言,學(xué)習(xí),經(jīng)驗(yàn)分享,筆記

這里只是簡(jiǎn)單的介紹了malloc函數(shù)的原型,具體如何使用還是需要大家多多探索,畢竟熟能生巧,大家只有多多練習(xí)才能提升自己的代碼水平。


??計(jì)算日期到天數(shù)轉(zhuǎn)換

【??途W(wǎng)鏈接:HJ73 計(jì)算日期到天數(shù)轉(zhuǎn)換】

【題目信息】:

C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章!(1),C語(yǔ)言刷題專欄,c語(yǔ)言,開(kāi)發(fā)語(yǔ)言,學(xué)習(xí),經(jīng)驗(yàn)分享,筆記
【答案解析】:

  • 這道題簡(jiǎn)單解法其實(shí)將每個(gè)月的天數(shù)枚舉出來(lái),然后根據(jù)當(dāng)前月份向前累加滿月的天數(shù),然后再加上當(dāng)前月所在的
    天數(shù)。最終考慮平閏年的 2 月份區(qū)別是否增加一天。
  • 其中需要注意的是平年和閏年的判斷,而且是閏年的月份大于 2 的時(shí)候,也就是 2 月走完,總天數(shù)才能加 1 (比
    如 2000年2月18日 ,雖然是閏年,但是 2月 都沒(méi)走完那是不能加上閏年多出的一天的).
#include <stdio.h>
int is_leap_year(int year) //判斷是否為閏年的函數(shù)
{
	if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
		return 1;
	} 
	return 0;
} 
int main()
{
	int month_day[] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };//下標(biāo)對(duì)應(yīng)月份
	int year, month, day;
	while (~scanf("%d %d %d", &year, &month, &day))//多組輸入
	{
		int total_day = day;//先把當(dāng)前月份天數(shù)加上
		if (is_leap_year(year) && month > 2)
		{
			total_day += 1;//若閏年,且月份大于2月,則在平年基礎(chǔ)上+1
		}
			for (int i = month - 1; i > 0; i--) 
			{
				total_day += month_day[i];//向前累加每月的天數(shù)即可
			}
		printf("%d\n", total_day);
	}
	return 0;
}

【拓展】:注意上述代碼中的 while (~scanf(“%d %d %d”, &year, &month, &day)),這條語(yǔ)句也可以寫成 while (scanf(“%d %d %d”, &year, &month, &day)!=EOF)。

scanf是一個(gè)函數(shù),用于從標(biāo)準(zhǔn)輸入(通常是鍵盤)讀取數(shù)據(jù)并將其存儲(chǔ)到變量中。它的基本語(yǔ)法是:

scanf("%format", &variable1, variable2, ...)

其中"%format"是用于指定輸入數(shù)據(jù)的格式,如整數(shù)(%d),浮點(diǎn)數(shù)(%f),字符(%c)等。"&variable1, variable2, …"是要存儲(chǔ)輸入的變量的地址。

然后,~是一個(gè)位運(yùn)算符,表示按位取反。它對(duì)操作數(shù)的每一位進(jìn)行取反,即把0變?yōu)?,把1變?yōu)?。在計(jì)算機(jī)中,數(shù)的存儲(chǔ)是以二進(jìn)制的形式進(jìn)行的,所以按位取反操作可以實(shí)現(xiàn)對(duì)一個(gè)數(shù)的所有二進(jìn)制位取反。scanf返回值是成功讀取數(shù)據(jù)的個(gè)數(shù),如果scanf遇到問(wèn)題(如用戶輸入的不是數(shù)字,或者已經(jīng)到達(dá)了文件尾),那么scanf會(huì)返回-1,-1在內(nèi)存中存儲(chǔ)的是補(bǔ)碼,其補(bǔ)碼是全1,所以~scanf取反后就變?yōu)槿?,就會(huì)返回0,循環(huán)就會(huì)停止。


??今天的內(nèi)容就到這里了,有什么問(wèn)題的話歡迎大家在評(píng)論區(qū)討論,也可以私信博主為你解答,如果覺(jué)得博主的文章還不錯(cuò)的話, 請(qǐng)??三連支持一下博主哦??

C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章!(1),C語(yǔ)言刷題專欄,c語(yǔ)言,開(kāi)發(fā)語(yǔ)言,學(xué)習(xí),經(jīng)驗(yàn)分享,筆記文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-682956.html

到了這里,關(guān)于C語(yǔ)言練習(xí)題解析:挑戰(zhàn)與突破,開(kāi)啟編程新篇章!(1)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue練習(xí)題(帶解析)

    Vue基礎(chǔ)入門 一、 填空題 Vue是一套構(gòu)建 __ 用戶界面 _____ 的漸進(jìn)式框架。 MVVM主要包含3個(gè)部分,分別是Model、View和____ ViewModel ___。 Vue中通過(guò) ___ refs ____ 屬性獲取相應(yīng)DOM元素。 在進(jìn)行Vue調(diào)試時(shí),通常使用 ___ vue-devtools ___ 工具來(lái)完成項(xiàng)目開(kāi)發(fā)。 Vue中頁(yè)面結(jié)構(gòu)以 ___ 組件 ?___ 形式

    2024年02月05日
    瀏覽(25)
  • Vue課后練習(xí)題及答案解析

    Vue課后練習(xí)題及答案解析

    第一章 Vue.js基礎(chǔ)入門 填空題 Vue是一套構(gòu)建________的漸進(jìn)式框架。 MVVM主要包含3個(gè)部分,分別是Model、View和________。 Vue中通過(guò)________屬性獲取相應(yīng)的DOM元素。 在進(jìn)行Vue調(diào)試時(shí),通過(guò)使用________工具來(lái)完成項(xiàng)目開(kāi)發(fā)。 Vue中頁(yè)面結(jié)構(gòu)以________形式存在。 判斷題 Vue與Angular和React框架

    2024年02月09日
    瀏覽(19)
  • C#基礎(chǔ)練習(xí)題,編程題匯總

    C#基礎(chǔ)練習(xí)題,編程題匯總

    編程實(shí)現(xiàn)在一行內(nèi)輸入若干個(gè)整數(shù)(不超過(guò)30個(gè)),輸出最大的一個(gè)整數(shù)。 樣例如下: 輸入(在一行內(nèi)輸入,空格分隔): 5 6 78 -89 0 23 100 4 6 輸出: 100 C#具體設(shè)計(jì): 1.先讓用戶輸入一些整數(shù), 2.再裝其讀入到字符串用, 3.用空格符來(lái)分割字符成,存成字符數(shù)組 4.用foreach語(yǔ)句

    2023年04月16日
    瀏覽(27)
  • 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(四)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(四)

    目錄 前言 一、傳輸層的作用 二、端口號(hào)的分類、作用 三、TCP協(xié)議的特點(diǎn)及應(yīng)用 四、UDP協(xié)議的特點(diǎn)及應(yīng)用 總結(jié) ??嗨!我是Filotimo__??。很高興與大家相識(shí),希望我的博客能對(duì)你有所幫助。 ??本文由Filotimo__??原創(chuàng),首發(fā)于CSDN??。 ??如需轉(zhuǎn)載,請(qǐng)事先與我聯(lián)系以獲得授

    2024年02月08日
    瀏覽(18)
  • 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(九)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(九)

    目錄 前言 一、OSPF雙棧 1.1?OSPFv3 LSA 1.2?OSPFv3 二、ISIS雙棧 2.1?ISISv6 2.2?ISIS高級(jí)特性 三、BGP雙棧 四、PIM雙棧 總結(jié) ??嗨!我是Filotimo__??。很高興與大家相識(shí),希望我的博客能對(duì)你有所幫助。 ??本文由Filotimo__??原創(chuàng),首發(fā)于CSDN??。 ??如需轉(zhuǎn)載,請(qǐng)事先與我聯(lián)系以獲得授

    2024年02月08日
    瀏覽(25)
  • 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(八)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(八)

    目錄 前言 一、LAN技術(shù) 1.1?堆疊與集群 1.2?MSTP的特點(diǎn) 二、WAN技術(shù) 2.1?PPP鏈路建立 2.2?PPPoE 2.3?組播 2.3.1?組播的IP 2.3.2?組播分發(fā)樹(shù) 2.3.3?組播協(xié)議 三、IPv6基礎(chǔ) 3.1?IPv6地址 3.2?IPv6協(xié)議 3.3?IPv6過(guò)渡技術(shù) 總結(jié) ??嗨!我是Filotimo__??。很高興與大家相識(shí),希望我的博客能對(duì)你有所

    2024年02月07日
    瀏覽(36)
  • 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(五)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(五)

    目錄 前言 一、應(yīng)用層的作用 二、HTTP協(xié)議 三、FTP協(xié)議 四、DNS協(xié)議 五、DHCP協(xié)議 六、郵件協(xié)議 ??嗨!我是Filotimo__??。很高興與大家相識(shí),希望我的博客能對(duì)你有所幫助。 ??本文由Filotimo__??原創(chuàng),首發(fā)于CSDN??。 ??如需轉(zhuǎn)載,請(qǐng)事先與我聯(lián)系以獲得授權(quán)??。 ??歡迎大

    2024年02月08日
    瀏覽(21)
  • 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(十)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(十)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(一)-CSDN博客 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(二)-CSDN博客 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(三)-CSDN博客 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(四)-CSDN博客 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(五)-CSDN博客 【

    2024年02月08日
    瀏覽(26)
  • 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(二)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(二)

    目錄 前言 一.?數(shù)據(jù)鏈路層的作用 1.1 數(shù)據(jù)鏈路層作用 1.2 數(shù)據(jù)鏈路層封裝 1.3 數(shù)據(jù)鏈路層功能 1.4 數(shù)據(jù)幀格式 二.?MAC地址及分類 2.1?MAC地址 2.2?MAC地址分類 三.?交換機(jī)的作用 3.1?交換機(jī)的作用 3.2?交換機(jī)作用 四.交換機(jī)的工作原理 4.1 交換機(jī)的工作原理 4.2?交換機(jī)幀處理 五.

    2024年02月07日
    瀏覽(23)
  • 【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(三)

    【技能樹(shù)筆記】網(wǎng)絡(luò)篇——練習(xí)題解析(三)

    目錄 前言 一、網(wǎng)絡(luò)層的功能 二、IP協(xié)議的特點(diǎn) 三、IPv4地址的分類和計(jì)算 四、常用協(xié)議和命令 五、路由表的工作原理 六、靜態(tài)路由 七、動(dòng)態(tài)路由 八、IPv6地址介紹 總結(jié) ??嗨!我是Filotimo__??。很高興與大家相識(shí),希望我的博客能對(duì)你有所幫助。 ??本文由Filotimo__??原創(chuàng)

    2024年02月08日
    瀏覽(18)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包