當前位置:首頁 » 編程軟體 » p編程試題網

p編程試題網

發布時間: 2022-06-01 18:41:17

1. c語言編程

這個是因為你的語法錯誤
if
{
語句
}
else
{
語句

}
要這種方式,你的是if(a<=1000) b= sqrt(a);這句判斷就結束了,和後面的else沒有關系了。要用{}把後面的語句括起來才可以。

2. 編程題void main() { int i=5,j=5,p,q; p=(i++)+(i++)+(i++); q=(++j)+(++j)+(++j);

看匯編碼,q=(++j)+(++j)+(++j); 相當於
1.++j..............j=6
2.++j..............j=7
3.j+j...............=14
4.++j.............j=8
5+j................22

關鍵在第一個++j後,並沒有把j值取出放到累加器,而是第二個++j之後:才把j取出放到累加器,然後又取一次j與累加器中的數相加。

3. 51單片機編程題單片機P1.0~1.7口接八個發光二極體(愛心圖樣)試編寫流水燈的匯編程序使發光二極體逐個亮

;啟動入口
ORG 0000H ;復位啟動
LJMP START ;
ORG 000BH ;T0中斷
LJMP T0INT ;
ORG 0100H ;
LJMP START ;
;
;主控程序
START: MOV SP,#80H ;初始堆棧值
MOV TMOD,#01H ;定時器0工作於方式1,50毫秒@12.000MHz
MOV TH0,#03CH ;定時器0定時時間=50mS
MOV TL0,#0B0H ;設置定時初值
MOV P1,#0FEH ;
MOV YSJS,#4 ;4*50mS=200mS
SETB ET0 ;允許定時器0中斷
SETB EA ;開總中斷
SETB TR0 ;定時器0啟動,開始定時
JMP $ ;死循環等待中斷
;
;定時器0中斷服務程序
T0INT: PUSH PSW ;保護現場
PUSH ACC ;
;
DJNZ YSJS,QT0 ;
MOV YSJS,#4 ;4*50mS=200mS
MOV A,P1 ;
RL A ;
MOV P1,A ;
;
QT0: MOV TH0,#03CH ;定時器0定時時間=50mS
MOV TL0,#0B0H ;
POP ACC ;恢復現場
POP PSW ;
RETI ;
;
YSJS EQU 30H ;
END ;

4. 兩道P語言編程題

#include<iostream> #include<cstdio> #include<vector>#include<algorithm>using namespace std; vector<int> g;const int maxn=10000005;int p1,p2,low,high,tar;void make(int jz){ int i,j,n,a[40]={0},tmp,x,y; tmp=low;j=1; while(tmp) { a[j++]=tmp%jz; tmp=tmp/jz; } n=j-1; if(n>1) { i=a[n-1]; j=a[n]; } else { i=0; j=a[n]; } for(x=n;;) { if(i==j) { i++; if(i==jz) { j++; i=0; } if(j==jz) { j=1; x++; } continue; } if(x%2) { for(y=x;y>=3;y-=2){a[y]=j;a[y-1]=i;} a[1]=j; } else { for(y=x;y>=2;y-=2){a[y]=j;a[y-1]=i;} } tmp=0; for(y=x;y>=1;y--)tmp=tmp*jz+a[y]; if(x==1)j++; else i++; if(i==jz) { j++; i=0; } if(j==jz) { j=1; x++; } if(tmp<low)continue; else if(tmp>high)break; else g.push_back(tmp); }}int test,c;int main(){ //freopen("r.txt","r",stdin); //freopen("w.txt","w",stdout); while(scanf("%d",&p1)==1) { g.clear(); scanf("%d%d%d%d",&p2,&low,&high,&tar); for(test=p1;test<=p2;test++)make(test); sort(g.begin(),g.end()); c=1; for(test=1;test!=g.size();test++) { if(g[test]!=g[test-1]) { if(c==tar)printf("%d\n",g[test-1]); c=1; } else c++; } if(c==tar)printf("%d\n",g[test-1]); } return 0;}

5. c語言編程題,形參p指向的是字元串中的最後一個字母,請問,在題目中為什麼是p++還是答案出錯了呢

你題目描述的不是很清楚啊!
但是你這個p指向最後一個字母,一般字元串最後還有一個結束符'\0',p++指向了最後一個結束字元的地址!

6. 編程題 用P1.1口控制一盞LED發光二極體以間隔時間為1秒鍾進行亮滅閃爍,要求利用T0定時器進行硬體延

設置定時器0定時時間1ms,在定時中斷函數里設置一個靜態局部變數記錄定時器溢出次數n,當n=1000時,定時1s時間到,P1.1口取非,在主函數里設置檢測P1.0狀態條件,當開關按下時,判斷定時器T0狀態,處於打開狀態就關閉它,處於關閉狀態就打開。。程序思想的簡單說明,代碼自己想辦法

7. 編程C語言題

#include <iostream>
#include <stdio.h>

using namespace std ;

int count[10] = {0} ;
void Picknum(char num[], char *p)
{
p = num ;
while(*p!= '\0')
{
char ch = *p ;
switch(ch)
{
case '0':
count[0]++ ;
break ;
case '2':
count[2]++ ;
break ;
case '4':
count[4]++ ;
break ;
case '6':
count[6]++ ;
break ;
case '8':
count[8]++ ;
break ;
case '1':
count[1]++ ;
break ;
case '3':
count[3]++ ;
break ;
case '5':
count[5]++ ;
break ;
case '7':
count[7]++ ;
break ;
case '9':
count[9]++ ;
break ;
default:
;//
}
p++ ;
}
}

void main(void)
{
cout << "Input a string " << endl ;
char buffer[100] ;
cin >>buffer ;
char *pbuf = NULL;
Picknum(buffer, pbuf) ;
for(int i=0 ; i<10; i++)
{
cout<< i << "的個數是" << count[i] << endl ;
}
}

第二題選D, int a=2,*p ;相當於
int a = 2;
int *p ;
所以 p=&a將p指向a
最後一題選C, 字元串比較不能使用指針比較的方式, 指針代表字元串的地址, 即使兩個字元串完全相同, 他們的指針也不同, 因為地址不同.
strcmp函數當兩個字元串相等時返回0

8. C語言編程比賽試題

#include <stdio.h>
#include <stdlib.h>
#include<string.h>

int main()
{
int n,i,j;
char p[10000];
while(scanf("%d",&n)!=EOF)
{
getchar();
for(i=0;i<n;i++)
{
gets(p);
putchar(p[0]);
for(j=1;j<strlen(p);j++)
printf(" %c",p[j]);
printf("\n");
}
}
}

熱點內容
linux讀u盤 發布:2024-05-02 11:49:37 瀏覽:782
android圖片點擊全屏 發布:2024-05-02 11:48:55 瀏覽:431
androidmvc和 發布:2024-05-02 11:48:49 瀏覽:656
兩位數密碼要試多少次能試出來 發布:2024-05-02 11:30:59 瀏覽:689
ae腳本插件表達式 發布:2024-05-02 11:26:45 瀏覽:267
手機電腦通用的伺服器 發布:2024-05-02 11:25:26 瀏覽:839
安卓b站賬號如何在ios登陸 發布:2024-05-02 11:20:29 瀏覽:198
微信加密碼鎖怎麼設置 發布:2024-05-02 11:17:24 瀏覽:585
四川伺服器託管雲空間雲主機 發布:2024-05-02 11:04:28 瀏覽:962
手機app重編譯 發布:2024-05-02 11:01:40 瀏覽:537