c語言加強
⑴ 如何用c語言實現加強版的凱撒密碼破解!
供參考 解碼只需要一句即可
感興趣自己分析下
#include<stdio.h>
intmain()
{
chars[100];
intk;
inti;
while(~scanf("%s%d",s,&k))
{
k%=26;
for(i=0;s[i];i++)
s[i]=(s[i]-'A'+26-(k+i+1)%26)%26+'A';
printf("%s ",s);
}
return0;
}
⑵ c語言中++是什麼意思
自加運算的。
假設說你上面的a=3;a++,那麼運算完了後a的結果就是4,這個跟++A是一樣的。輸出結果都是4,
但是還是有區別的迅爛轎。a++表示在運算之後才進行賦值歷掘給畝肆A的,
++a表示在運算之前賦值給a。
⑶ c語言 百萬富翁問題加強版
#include <stdio.h>
main()
{
int day;
double m,money=0,giveout=0.01;
printf("m="慶仿);
scanf("譽汪纖%lf",&m);
for(day=0;money>=0;day++)
{
money=money+m-giveout;
giveout*=2;
}
printf("day=%d\nlost=%.2lf\n"陵帶,day,money);
}
/*不難吧*/
⑷ c語言 加強
網上收集的資料 供參考
怎樣才能學好C語言
第一:C語言語法結構很簡潔精妙,寫出的程序也很高效,很便於描述演算法,大多數的程序員願意使用C語言去描述演算法本身,所以,如果你想在程序設計方面有所建樹,就必須去學它。
第二:C語言能夠讓你深入系統底層,你知道的操作系統,哪一個不是C語言寫的?所有的indows, Unix, Linux, Mac, os/2,沒有一個里外的,如果你不懂C語言,怎麼可能深入到這些操作系統當中去呢?更不要說你去寫它們的內核程序了。
第三:很多新型的語言都是衍寬慧首生自C語言,C++,Java,C#,J#,perl...哪個不是呢?掌握了C語言,可以說你就掌握了很多門語言,經過簡單的學習,你就可以用這些新型的語言去開發了,這個再一次驗證了C語言是程序設計的重要基礎。還有啊,多說一點:即使現在招聘程序員,考試都是考C語言,你想加入it行業,那麼就一定要掌握好C語言。
那麼究竟怎樣學習C語言呢?
1:工欲善其事,必先利其器
這里介紹幾個學習C語言必備的東東:
一個開發環境,例如turbo C 2.0,這個曾經占據了DOS時代開發程序的大半個江山。但是現在windows時代,用turbo C有感覺不方面,編輯程序起來很吃力,並且拖放,更沒有函數變數自動感應功能,查詢參考資料也不方便。建慎數議使用Visual C++,這個東西雖然比較大塊頭,但是一旦安裝好了,用起來很方便。
一本學習教程,現在C語言教材多如牛毛,但推薦大家使用《C語言程序設計》譚浩強主編 第二版 清華大學出版社,此書編寫的很適合初學者,並且內容也很精到。
除此以外,現在有很多輔助學習的軟體,畢竟現在是Window時代了,學習軟體多如牛毛,不象我們當初學習,只有讀書做題這么老套。我向大家推薦一個「集成學習環境(C語言)」,里邊的知識點總結和常式講解都非常好,還有題庫測試環境,據說有好幾千題,甚至還有一個windows下的trubo C,初學者甚至不用裝其它的編譯器,就可以練習編程了,非常適合初學者。還有一個「C語言學習系統」軟體,不過感覺只是一個題庫系統,如果你覺得題做的不夠,不妨也可以試試。
2:葵花寶典
學習計算機語言最好的方法是什麼?答曰:讀程序。
沒錯,讀程序是學習C語言入門最快,也是最好的方法。如同我,現在學習新的J#,C#等其他語言,不再是抱著書本逐行啃,而是學習它們的常式。當然,對於沒有學過任何計算機語言的初學者,最好還是先閱讀教程,學習完每一章,都要認真體會這一章的所有概念,然後不放過這一章中提到的所有常式,然後仔細研讀程序,直到每一行都碧敬理解了,然後找幾個編程題目,最好是和常式類似的或一樣的,自己試圖寫出這段已經讀懂的程序,不要以為常式你已經讀懂了,你就可以寫出和它一樣的程序,絕對不一定,不相信你就試一試吧,如果寫不出來,也不要著急,回過頭來再繼續研究常式,想想自己為什麼寫不出來,然後再去寫這段程序,反反復復,直到你手到擒來為止,祝賀你,你快入門了。
3:登峰造極
寫程序的最高境界其實就是掌握各種解決問題的手段(數據結構)和解決問題的方法(演算法)。
是不是寫出底層程序就是程序設計高手呢?非也,寫底層程序,無非是掌握了硬體的結構,況且硬體和硬體還不一樣,要給一個晶元寫驅動程序,無非就是掌握這塊晶元的各種寄存器及其組合,然後寫值讀值,僅此而已。這不過是熟悉一些io函數罷了。那麼怎樣才算精通程序設計呢?怎樣才能精通程序設計呢?舉個例子:你面前有10個人,找出一個叫「張三」的人,你該怎麼辦?第一種方法:直接對這10個人問:「誰叫張三」。第2種方法:你挨個去問「你是不是張三?」,直到問到的這個人就是張三。第三種方法:你去挨個問一個人「你認不認識張三,指給我看」。不要小看這個問題,你說當然會選第一種方法,沒錯恭喜你答對了,因為這個方法最快,效率最高,但是在程序設計中找到解決問題的最優方法和你用的手段卻是考驗一個程序員程序設計水平的重要標志,而且是不容易達到的。剛才這個問題類似於數據結構和演算法中的:Map數據結構,窮舉查找和折半查找。所以掌握好數據結構和一些常用演算法,是登峰造極的必然之路。最後給大家推薦嚴尉敏的《數據結構》清華大學出版社,希望每一個想成為程序設計高手的人研讀此書。
編譯軟體,對於新手來說VC++6.0簡單易操作
下載地址
http://hi..com/%D3%A5%DE%C4/blog/item/2a8d0df7180b9b4c342acc5e.html
譚浩強《C程序設計》上機試題可以下載
http://hi..com/%D3%A5%DE%C4/blog/item/1b8c968f649f4e639e2fb49c.html
其他C語言資料參考書,如趣味一百例
http://hi..com/%D3%A5%DE%C4/blog/item/019bcafefade81c2b58f3159.html
基礎C視頻教程
http://hi..com/%D3%A5%DE%C4/blog/item/31e3eac0cc57f3d738db495f.html
郝斌C語言視頻
http://hi..com/%D3%A5%DE%C4/blog/item/df9b5a26c00bc1b84623e894.html
⑸ c語言 列印菱形加強版
第一題: (沒團仿春注意到是2n+1 改過來了)
#include<stdio.h>
main()
{
char n[100];
int i,j,m;
for(i=0;i<100;i++)
n[i]='*';
scanf("%d",&m);
m=2*m+1;
for(i=1;i<大罩=m;i++)
{
for(j=0;j<i;j++)
printf("%c",n[j]);
printf("\n");
}
for(i=m-1;i>0;i--)
{
for(j=0;j<i;j++)
printf("%c",n[j]);
printf("\n");
}
}
第二題:跟第一題差不多 改4個地方就可以了
#include<stdio.h>
main()
{
int n[100]; //char變成int
int i,j,m;
for(i=0;i<100;i++)
n[i]=i+1; //'*'變成i+1;
scanf("%d",&m);
for(i=1;i<=m;i++)
{
for(j=0;j<i;j++)
printf("%d",n[j]); //%c改成%d
printf("塌耐\n");
}
for(i=m-1;i>0;i--)
{
for(j=0;j<i;j++)
printf("%d",n[j]); //同上
printf("\n");
}
}
⑹ 剛剛過C語言二級考試,覺得題目不算難,還算得心應手,本人想繼續加強C語言的水平,請問有沒有什麼好的
二級C是很基礎的
想加強 有頃悄幾個方滲滑向
1 繼續考試,考三級C,或者直接目標過四級。
2 找一些進階的數,比如C與指針什麼的
3 找幾叢乎臘個小項目做
4 學演算法和數據結構
5 做ACM練手。
⑺ c語言 列印菱形之加強版
這么簡單的題樓主還問……馬上要出門,要是回來的時候還沒有氏兄納人塵基給答案就給你寫一個
還沒人來呢啊,估計跟時間有關系吧,給你貼個答案吧,在wintc191下通過了(我手頭實在找不到別的環境了……)
1.c:
#include <stdio.h>
#include <conio.h>
void main ()
{
int n,i,j,x;
printf ("Plese input number n:");
scanf ("%d",&n);
for (i=1;i<=n;i++)
{
for (j=0;j<=n-i;j++)
printf(" ");
for (x=1;x<=2*i-1;x++)
printf ("*");
printf ("\n");
}
for (i=1;i<=2*n+1;i++)
printf ("*");
printf ("\n");
for (i=n;i>=1;i--)
{
for (j=n-i;j>=0;j--)
printf(" ");
for (x=2*i-1;x>=1;x--)
printf ("*");
printf ("\n");
}
getch();
}
2.c
#include <stdio.h>
#include <conio.h>
void main ()
{
int n,i,j,x,y;
printf ("Plese input number n:");
scanf ("%d",&n);
for (i=1;i<=n;i++)
{
for (j=1;j<殲沒=n-i;j++)
printf(" ");
for (x=1;x<=i;x++)
printf ("%d",x);
for (y=i-1;y>=1;y--)
printf ("%d",y);
printf ("\n");
}
for (i=n-1;i>=1;i--)
{
for (j=n-i;j>=1;j--)
printf(" ");
for (x=1;x<=i;x++)
printf ("%d",x);
for (y=i-1;y>=1;y--)
printf ("%d",y);
printf ("\n");
}
getch();
}
⑻ c語言入門的話只靠看書可以么,還需要加強些什麼。網上有沒有很好的視頻輔導之類的,會不會很難。求助
邊看書邊實際寫代碼操作是最好的辦跡遲盯法,把書上的代碼編譯出來,並理解每一行代碼的作用。
需要先學習C語言基本語法,數據類型。
然後學習基本數據結構如鏈表等。
接著 需要了解C庫函數,C庫函數就像英語單詞一樣幾百個,知道每個函數的作用,這樣在編程時可以想到該用哪個函數。
系統API和流行常用C庫也是必不可少的。
以上這些如果你都學會,恭喜你,你可以應聘網路、阿里、騰訊的軟體旦缺工姿和程師,待遇1W以上。
⑼ 怎麼用c語言解決洛谷壓縮問題的加強版
?
洛谷壓縮問題豎並的加強版是一個經典的動態規劃問題,可以使用c語言來解決。
首先,定義一個二維數組dp[i][j],其中i表示字元串的起始位置,j表示字元串的終止位置,dp[i][j]表示從字元串i到字元串j的最小壓搜孝縮長度。
然後,使用動態規劃的思想,從小到大計算dp[i][j]的值,具體的步驟如下:
1. 如果i=j,則dp[i][j]=1;
2. 如果余漏跡i<j,則dp[i][j]可以表示為:
dp[i][j] = min(dp[i][j], dp[i][k] + dp[k+1][j]),其中k從i到j-1。
最後,返回dp[0][n-1]即可得到最終的最小壓縮長度。
⑽ c語言怎麼加強
C標准庫看K & R,或C手冊(C: A Reference Manual),或C99標准都可以,以手冊最詳實方便。
非標準的庫一般的書不會介紹,要看專門的庫的文檔才行。
Windows下C編源擾程可以學API函數,這個找一本API的手冊就可以了。這也是增加C語言在實際編程中的主要方法。
另外就是用C自己編一些庫,然後在其他程序中用。
由於C是相對「低級」的語言,用C編寫程序界面並不合適,通常歲歲是用它寫底層演算法,然後表面雹雀旦的東西用其他語言或可視化軟體(如VB)生成。