C语言编程题:简单的a+b
生活随笔
收集整理的這篇文章主要介紹了
C语言编程题:简单的a+b
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
今天咱們開始進(jìn)行C語言編程的練習(xí),我盡量會給出我所理解的最詳細(xì)的解答過程,我后續(xù)會補(bǔ)充其他語言對題目的理解,這里還是主要以C語言為主,C++語言為輔。相關(guān)的題目都是來自于藍(lán)橋杯ACM,碼蹄集以及??途W(wǎng),LeetCode等上面的題目
先從最簡單的開始!!!
來自藍(lán)橋杯ACM競賽:簡單的a+b
傳送門
- 題目描述
- 輸入格式
- 輸出格式
- 樣例輸入
- 樣例輸出
- 題目分析
- AC代碼
- 小補(bǔ)腦洞
- ~作用解析
題目描述
輸入兩個(gè)整數(shù)a和b,計(jì)算a+b的和。
輸入格式
輸入兩個(gè)整數(shù)A和B
范圍不超過2^10
輸出格式
求A+B
樣例輸入
1 1 10 20樣例輸出
2 30題目分析
這里的a+b,需要讀者好好想一想,通過樣例可以看出輸入和輸出的時(shí)候是要分行的,并不是平時(shí)那種簡單的a+b編程,詳情請看下面解析:
請讀者把下面看完之后在返回上來看下面這句:
如果你的C語言還可以的話,上面這句你是可以看懂的!!!EOF End of File
AC代碼
#include<stdio.h> int main() {int a=0,b=0;while(~scanf("%d%d", &a, &b)) //下面有關(guān)于~的解析{printf("%d\n",a+b);} return 0; }小補(bǔ)腦洞
~作用解析
有很多讀者對 ~ 不能理解,我就重點(diǎn)介紹一下吧。
(重點(diǎn),重點(diǎn),重點(diǎn)!!!!!!!!!!作筆記了!!!!)
- 在Windows下,用戶按下CTRL+Z(會看到一個(gè)^Z字符),會停止輸入流,scanf會返回-1。
- -1的補(bǔ)碼為11111111 11111111 11111111 11111111 一共4個(gè)字節(jié)。
- ~ 是C語言中的按位取反,因此~(-1)結(jié)果為00000000 00000000 00000000 00000000剛好為整數(shù)0的補(bǔ)碼。
- 因此當(dāng)輸入Ctrl+Z時(shí),scanf會返回-1,while(~-1)==while(0),0為假,退出while循環(huán)。
總結(jié)
以上是生活随笔為你收集整理的C语言编程题:简单的a+b的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 控制DIV内容滚动的方法,实现不用拖滚动
- 下一篇: es elasticsearch 几种常