apue 2013-03-16
時(shí)間下一秒:判斷是不是60,是秒數(shù)為0,分鐘+1
判斷分鐘是不是60,是分鐘為0,小時(shí)+1
判斷小時(shí)是不是24,是小時(shí)為0,日期+1
s=s+1?if(s==60){
S=0;m=m+1;
If(m==60)
{
M=0;
H++;
If?(h==24)
{
H=0;
}
}
}
核心算法+一秒??scanf("%d:%d:%d",&h,&m,&s);
While(1)
{
Sleep(1);表
}
?
標(biāo)準(zhǔn)C提供的輸入輸出函數(shù)
Printf???->?緩沖區(qū)????行??全???零緩沖
Fopen?????->屏幕?????printf?("\n");
刷新緩沖區(qū)??:fflush(NULL);空指針
Fopen()??????堆上
Fclose()??????1.free??2刷新??fflush(NULL);??文件大小或沒(méi)寫進(jìn)去??ffflush(NULL);
?
程序難:完整????printf("\r%d%d%d",);光標(biāo)移動(dòng)到行首
?
?
循環(huán):
For???VS??while??一樣???注意:在使用continue??
Do{}while;
?
?
1,作什么??{循環(huán)體}
2,循環(huán)次數(shù)?最痛苦
?
表達(dá)式1,表達(dá)式2,表達(dá)式3???表達(dá)式1一次
For?(;;){
語(yǔ)法???循環(huán)體;?
}
?
輸出:0~9重復(fù)代碼
初值???步長(zhǎng)???while()循環(huán)次數(shù)
!vi???!g
?
編寫代碼:輸出100以內(nèi)所有的偶數(shù)
偶數(shù):能被2整除??num%2==0
多種算法???初值條件判斷步長(zhǎng)
I=0;??提示:思考循環(huán)最后一次?i<=100??多一個(gè)=號(hào)多一次
While(i<=50)
{
Printf?("%d",i*2);
I++;
}
循環(huán)次數(shù)??常???固
??????????變???變
循環(huán)嵌套????99乘法表
1****************
2*
?*
?*
?*
3正方形
4三角形
5平形四邊形
6菱形??空心菱形
?
輸入一個(gè)數(shù)判斷是不是素?cái)?shù)
打印100以內(nèi)所有的素?cái)?shù)
輸入一個(gè)數(shù),輸出大于該數(shù)的5個(gè)素?cái)?shù)
?
?
Qt安裝過(guò)程
1解包:tar?-xzvf?qt-???....tar.gz
2進(jìn)入到解壓后的文件夾中??cd?qt?
3執(zhí)行?./configure
4執(zhí)行?make??時(shí)間長(zhǎng)
5執(zhí)行make?install
?
?
分析:
行???空格???星????1個(gè)\n
0????3??????1??
1????2??????3
2????1??????5
3????0?????7
I????3-i????2*i+1最難的
?
?
行???空格????星???1個(gè)\n
0?????1??????5
1?????2??????3?
2?????3??????1
I?????i+1?????5-2*i
最難的????可變大可變小的菱形
素?cái)?shù):只能被1和本身整理除.
For??(f=0,i=2;i<n;i++)
{
If?(n%i==0)
{
F=1;
Break;
}
}
If?(f==0)
Printf?("%d\n",n);
?
For?VS?while
For?(i=0;i<10;i++)
If?(i%3==0)?continue;
?
I=0;
While(i<10)
{
If?(i%3==0)
Continue;
I++;
}
?
Continue:結(jié)束本次循環(huán)。(for:執(zhí)行表達(dá)式3;while判斷語(yǔ)句)
Break:結(jié)束循環(huán)(一層)
Goto:1。跳出多重循環(huán)
?????2.錯(cuò)誤處理
Return?1,2,3??錯(cuò)誤不一樣
?
?
數(shù)組?????為什么定義數(shù)組?相同類型數(shù)據(jù)的集合
1.成員的類型是相同的
2.連續(xù)存儲(chǔ)
數(shù)據(jù)類型???數(shù)組名???[成員的個(gè)數(shù)]
Typedef??int?arr[100];???arr變量的名字???不對(duì)
Typedef??int?a;????a是int?類型的別名
起別名????定義變量????arr??buf;???
??????????????????????Int??buf[100];
Int?arr[100];數(shù)組類型每一個(gè)成員的類型
[]成員的個(gè)數(shù)????常量?9??'a'??const?int?b;常量
Sizeof(buf)數(shù)組名???sizeof(數(shù)據(jù)類型)*成員個(gè)數(shù)??????
數(shù)組的初始化
Int??arr[8];???隨即值
Int??arr[4]?=?{1,2,3,4};
???????????{1,2,0,0};計(jì)算機(jī)幫助我們做
???????????{0};全為0,某個(gè)成員賦值,字符串
Int?arr[]?=?{1,2,3,4};
1.數(shù)組在初始化
2.函數(shù)形參
?
成員的引用:
Arr[0]??arr[1]???arr[2]???arr[3]
?
創(chuàng)建一個(gè)20個(gè)成員的數(shù)組
Memcpy();對(duì)整個(gè)內(nèi)存進(jìn)行比較
?
Arr[0]=2;
For?(i=1;i<100;i++)
Arr[i]=arr[i-1]+2;
?
?
數(shù)組的操作
1.成員賦值與取值
2.找最大值
Sizeof(數(shù)組名)?=?sizeof(數(shù)據(jù)類型)*成員個(gè)數(shù)
3數(shù)組成員交換(反序反向)
輸入一個(gè)數(shù)組,將數(shù)組首尾互換,實(shí)現(xiàn)數(shù)組的翻轉(zhuǎn)
4排序???5種以上排序方法
5數(shù)組的移動(dòng)向前移動(dòng)向后移動(dòng)
向前:產(chǎn)生一個(gè)數(shù)組,刪除數(shù)組中相同多余的數(shù)
向后:向有序數(shù)組中插入一個(gè)數(shù),使之仍然有序
Rand()??;即數(shù)
Srand(getpid());??變化的值,不同的隨即數(shù)???#Iinclude?<unistd.h>??頭文件
Rand()%41+50;
使用隨即數(shù)產(chǎn)生20個(gè)數(shù),將數(shù)組分為兩部分
奇數(shù)部分在前,偶數(shù)部分在后,分別排序
?
Set?mouse=a
?
?
一維字符數(shù)組:字符+‘\0’=字符串
二維數(shù)組:CRC校驗(yàn)
二維字符數(shù)組:==二級(jí)指針+malloc??argv
?
#ifndef?N
#define?N?10
#endif
Rand()%5?數(shù)組大小不變有效減少
向前移動(dòng)i--
冒泡(相鄰的)一個(gè)算法
For?(i=0;i<len-1;i++)
If?(arr[i]>arr[i+1])
{
Tmp??反向冒泡
}???
?
For?(i=len-1;i>=1;i--)
If?(arr[i]<arr[i-1]){
}少了很多循環(huán)
?
編程:處理數(shù)據(jù)(全雙工)?半雙工(pipe??mkfifo)
有線:socket?管道??字節(jié)流???
無(wú)線:
?
字符串:若干個(gè)字符???+???'\0'
Char?buf[100];
Char?buf[4]?=?{'a',?'b',?'c','d'};??對(duì)的
Char?buf[4]?=?{'a','b',0,'\0','0'};??
Char?buf[4]?=?{"ab"};
Char?buf[4]?=?"ab";
Char?buf[]?=?{""};可以
字符串的輸入輸出
Scanf("%s",buf);不能有空格??空格?tab分隔符
Gets();警告
?
Gets(buf);沒(méi)有過(guò)界的檢查
Read(0,buf,sizeof(buf));?????????????輸入
Fgets(buf,sizeof(buf),stdin);
?
Printf("%s\n",buf);???
Char?buf[100]?=?"abcd\-bcd";???abc
Buf?+3?回車??沒(méi)有輸出
?
Puts(buf);自動(dòng)打印回車,刷新緩沖區(qū),這個(gè)地方恰好是'\0'
Write(1,buf,strlen(buf));???輸出
Fputs(buf,?sizeof(buf),stdout);
?
1.從鍵盤上輸入一個(gè)字符串,找出最小的字符
2.從鍵盤上輸入一個(gè)字符串,計(jì)算字符串長(zhǎng)度.strlen
3.輸入兩個(gè)字符串,輸出較大的字符串strcmp
4.Strchr在字符串中找一個(gè)字符?
5.Strcat??strcpy??strstr??長(zhǎng)中找小的字符串
6.編寫mystrstr在一個(gè)字符串中找另一個(gè)字符串??"abcd"???"bc"
7.輸入一個(gè)字符串,刪除多余的空格?"abc?de??de"??"abc?de?de"
8.輸入一個(gè)字符串??將abcd換成bc??"abcdefgh"??"bcdefgh"
9.輸入一個(gè)數(shù)字字符串,將其轉(zhuǎn)為整型數(shù)輸出??"123.c"??123?
10.從鍵盤上輸入一個(gè)數(shù),將其轉(zhuǎn)為字符串??12312?"12312"
提示:字符串末尾有'\0'???
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/wangjingyuwhy/archive/2013/03/16/2963938.html
總結(jié)
以上是生活随笔為你收集整理的apue 2013-03-16的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: tomcat无法启动(JVM错误)
- 下一篇: java中日期类型与字符串相互转换