c演算法面試題及答案
Ⅰ c語言面試題
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。下面就由我為大家介紹一下C語言面試題的文章,歡迎閱讀。
C語言面試題篇1
1、已知字母b的ASCII碼的十進制代碼為98,則執行下列語句輸出為( C)
ch=’b’;
ch–;
printf(%d,%c ”,ch,ch);
A)a,b B)運算不合法,故有語法錯 C)97,a
D)格式描述和輸出項不匹配,輸出無值
2、若變數a已說明為float類型,則能實現將a中的數值保留小數點後兩位,第三位進行四捨五入運算的表達式是( C)
A)a=(a*100+0.5)/100.0 B)a=(a*100+0.5)/100 C)a=(int)(a*100+0.5)/100
D)a=(a/100+0.5)*100.0
3、下列程序段的輸出結果是(B )
int a=5,b=7;
printf(“%d,%d”,a++,++b);
A)5, 7 B)5, 8 C)6, 7 D)6, 8
C語言面試題篇2
1、下列程序的輸出結果是(D )
main()
{ int a=4;
a*=a+=6;
printf(“%d ”,a);
}
A)40 B)60 C)80 D)100
2、下列程序的輸出結果是( C)
main()
{int a=8;
printf(“%a”,(a=a*5,a+6));
}
A)14 B)40 C)46 D)50
C語言面試題篇3
1、定義a為整型,下列表達式a=3>6的運行後,a的值為(A )
A)0 B)1 C)3 D)表達式錯誤
2、、如果a=1,b=2,c=3,d=4,則條件表達式a>b?a: c>d?c: d的值為( D)
A)1 B)2 C)3 D)4
3、下述程序段的輸出結果是( A)
{int a=5;
a%=7;
printf(“%d, ”,a);
a+=a*=a-=a*=2;
printf(“%d”,a);
}
A)5, 0 B)0, 0 C)5, 12 D)0, 12
4、下列變數名中合法的是(A )
A)Tom B)3a6b C)6a7b D)5ABC
5、對於條件表達式(M)?(a++): (a–),其中的表達式M等價於(C )
A)M= =0 B)M= =1 C)M!=0 D)m!=1
Ⅱ 計算機二級C語言筆試題和面試題答案目
如下這份計算機二級C語言筆試題目對於要考基計算機二級證書的朋友來說,應該會很有幫助,需要的朋友趕緊收藏吧!
一、選擇題((1)-(10),(21)-(40)每題2分,(11)-(20)每題1分,共70分)
下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的。請將正確選項填塗在答題卡相應位置上,答在試卷上不得分。
1. 下列敘述中正確的是
A 線性表的鏈式存儲結構與順序存儲結構所需要的存儲空間是相同的
B 線性表的鏈式存儲結構所需要的存儲空間一般要多於順序存儲結構
C 線性表的鏈式存儲結構所需要的存儲空間一般要少於順序存儲結構
D 上述三種說法都不對 答案:B
2. 下列敘述中正確的是
A 在棧中,棧中元素隨棧底指針與棧頂指針的變化而動態變化
B 在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動態變化
C 在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動態變化
D 上述三種說法都不對 答案:C
3. 軟體測試的目的是
A 評估軟體可靠性 B 發現並改正程序中的錯誤 C 改正程序中的錯誤
D 發現程序中的錯誤 答案:B
4. 下面描述中,不屬於軟體危機表現的是
A 軟體過程不規范 B 軟體開發生產率低 C 軟體質量難以控制
D 軟體成本不斷提高 答案:A
5. 軟體生命周期是指
A 軟體產品從提出、實現、使用維護到停止使用退役的過程
B 軟體從需求分析、設計、實現到測試完成的過程 C 軟體的開發過程
D 軟體的運行維護過程 答案:A
6. 面向對象方法中,繼承是指
A 一組對象所具有的相似性質 B 一個對象具有另一個對象的性質 C 各對象之間的共同性質 D 類之間共享屬性和操作的機制 答案:D
7. 層次型、網狀型和關系型資料庫劃分原則是
A 記錄長度 B 文件的大小 C 聯系的復雜程度
D 數據之間的聯系方式 答案:D
8. 一個工作人員可以使用多台計算機,而一台計算機可被多個人使用,則實體工作人員、與實體計算機之間的聯系是
A 一對一B 一對多C 多對多D 多對一 答案:C
9. 資料庫設計中反映用戶對數據要求的模式是
A 內模式B 概念模式C 外模式D 設計模式 答案:C
10. 有三個關系R、S和T如下:則由關系R和S得到關系T的操作是
A 自然連接B 交C 投影D 並 答案:A
11. 以下關於結構化程序設計的敘述中正確的是
A 一個結構化程序必須同時由順序、分支、循環三種結構組成
B 結構化程序使用goto語句會很便捷 C 在C語言中,程序的模塊化是利用函數實現的
D 由三種基本結構構成的程序本文由論文聯盟http://www.LWLm.coM收集整理只能解決小規模的問題 答案:C
12. 以下關於簡單程序設計的步驟和順序的說法中正確的是
A 確定演算法後,整理並寫出文檔,最後進行編碼和上機調試
B 首先確定數據結構,然後確定演算法,再編碼,並上機調試,最後整理文檔
C 先編碼和上機調試,在編碼過程中確定演算法和數據結構,最後整理文檔
D 先寫好文檔,再根據文檔進行編碼和上機調試,最後確定演算法和數據結構 答案:D
13. 以下敘述中錯誤的是
A C程序在運行過程中所有計算都以二進制方式進行 B C程序在運行過程中所有計算都以十進制方式進行 C 所有C程序都需要編譯鏈接無誤後才能運行
D C程序中整型變數只能存放整數,實型變數只能存放浮點數 答案:B
14. 有以下定義:inta; longb; doublex,y;則以下選項中正確的表達式是
A a%(int)(x-y) B a=x!=y; C (a*y)%b D y=x+y=x 答案:C
15. 以下選項中能表示合法常量的是
A 整數:1,200 B 實數:1.5E2.0 C 字元斜杠:‘\’ D 字元串:"\007" 答案:C
16. 表達式a+=a-=a=9的值是
A 9 B _9 C 18 D 0 答案:D
17. 若變數已正確定義,在if (W)printf(“%d\n,k”);中,以下不可替代W的是
A a<>b+c B ch=getchar() C a==b+c D a++ 答案:A
18. 有以下程序
#include
main()
{inta=1,b=0;
if(!a) b++;
elsEif(a==0)if(a)b+=2;
elseb+=3;
printf(”%d\n”,b);
}
程序運行後的輸出結果是
A 0 B 1 C 2 D 3 答案:C
20. 有以下程序
#include
main()
{int a=1,b=2;
while(a<6){b+=a;a+=2;b%二10;}
printf(”%d,%d\n”,a,b);
}
程序運行後的輸出結果是
A 5,11 B 7,1 C 7,11 D 6,1 答案:D
21. 有以下程序
#include
main()
{int y=10;
while(y--);
printf(”Y=%d\n”,Y);
}
程序執行後的輸出結果是
A y=0 B y= -1 C y=1 D while構成無限循環 答案:B
22. 有以下程序
#include
main()
{char s[」=”rstuv";
printf(”%c\n”,*s+2);
}
程序運行後的輸出結果是
A tuv B 字元t的ASCII碼值 C t D 出錯 答案:D
23. 有以下程序
#include
#include
main()
{char x[]=”STRING”;
x[0」=0;x=’\0’;x[2」=’0’;
printf(”%d%d\n”,sizeof(x),strlen(x));
}
程序運行後的輸出結果是
A 61 B 70 C 63 D 71 答案:B
24. 有以下程序
#include
Int f(intx);
main()
{intn=1,m;
m=f(f(f(n)));printf(”%d\n”,m);
}
intf(intx)
{returnx*2;}
程序運行後的輸出結果是
A 1 B 2 C 4 D 8 答案:D
25. 以下程序段完全正確的是
A int *p;scanf("%d",&p); B int *p;scanf(“%d”,p);
C int k, *p=&k;scanf("%d",p); D int k, *p:;*p= &k; scanf(“%d”,p); 答案:D
26. 有定義語句:int *p[4];以下選項中與此語句等價的是
A intp[4]; B int**p; C int*(p「4」); D int (*p)「4」; 答案:D
27. 下列定義數組的語句中,正確的是
A B C intx[0..10]; D int x[]; 答案:B
28. 若要定義一個具有5個元素的整型數組,以下錯誤的定義語句是
A inta[5]=﹛0﹜; B intb[]={0,0,0,0,0}; C intc[2+3]; D inti=5,d[i]; 答案:A
29. 有以下程序
#include
voidf(int *p);
main()
{inta[5]={1,2,3,4,5},*r=a;
f(r);printf(”%d\n”;*r);
}
void f(int *p)
{p=p+3;printf(”%d,”,*p);}
程序運行後的輸出結果是
A 1,4 B 4,4 C 3,1 D 4,1 答案:D
30. 有以下程序(函數fun只對下標為偶數的元素進行操作)
# include
void fun(int*a;int n)
{int i、j、k、t;
for (i=0;i
Ⅲ C語言面試題
任意取兩個點,計算連線y=ax+b中的a和b.計算出來之後,把其他點的坐標代入這條線的公式里計算是否在這條直線上。統計在這條線上的點的個數。這是一種其中的一種方案。
遍歷這個集合中的所有的可能,應該有Cn2種方案。然後其中點數最多的方案找出來就可以了。
演算法笨了一點,但應該管用。
Ⅳ 經典C語言面試演算法題
經典C語言面試演算法題
1.寫一個函數,它的原形是int continumax(char *outputstr,char *intputstr)
功能:
在字元串中找出連續最長的數字串,並把這個串的長度返回,並把這個最長數字串付給其中一個函數參數outputstr所指內存。例如:"abcd12345ed125ss123456789"的首地址傳給intputstr後,函數將返回
9,outputstr所指的值為123456789。
#include
#include
#include
int FindMax_NumStr(char *outputstr,char *inputstr)
{
char *in = inputstr,*out = outputstr,*temp;
char *final;
int count = 0;
int maxlen = 0;
int i;
while(*in!='