當前位置:首頁 » 編程語言 » 大一c語言課本答案

大一c語言課本答案

發布時間: 2022-11-18 06:28:52

1. 大一c程序題 高分 急急急 (老規矩,答案全對追加高分)

D C A C A A B C D C
下面對難點解釋一下
第3題
c='\101'
在使用轉義字元時符號\後面的數字默認是8進制,因此這里的'\101'就是對應的ASCII碼中的大寫字母A,即65,所以這里只有一個字元,也不存在非法字元的現象
第5題
任何計算機都是以二進制來表示數字的,因此任何計算機中都無法精確表示出浮點數。所以答案A肯定是錯誤的。
第7題
賦值語句的左邊不能是常量,算術運算符的優先給高於賦值運算符,因此
d=9+e+f=d+9這樣的語句是錯誤的,因為9+e+f之後得到一個常量,然後再對常量賦值就是錯誤的,因此正確答案只有B
第8題
m=++i; //先自加i得到i=9,然後再賦給,因此m=9;
n=j++; //先賦值因此n=10;再自加,因此j=11
所以i=9;j=11;m=9;n=10答案為C
第9題
出這種題是垃圾,因為不同編譯器有不同的結果
第10題:
該題問的是a的值,並不是問的輸出多少,因此答案是15,解釋如下
(a=3*5,a*4,a+5)
括弧中是一個逗號表達式,逗號運算符的優先順序低於賦值運算符,因此先執行a=3*5得到a=15,逗號運算符的計算規則是從左向右計算,最後以最右邊的值為整個表達式的值,因此結果輸出的是a+5也就是輸出20,但這並沒有改變a的值,因此a的值為a=3*5這里賦的值,為15

2. 【大一 c語言】下面的程序片段 y=-1; if(x!=0) if(x>0)y=1;else y=0; 所表示的數學函數關系是

上面是我自己敲的代碼用來測試的。C語言對嵌套if語句的規定是: else總是其前面最近的尚未配對的if。所以答案應該是C

3. 大一C語言求解答

(三)項目四 數組
選擇題:
1.若二維數組a有m列,則在a[i][j]前的元素個數為____d____.
a)j*m+i b)i*m+j c)i*m+j-1 d)i*m+j+1
2.以下對二維數組a的正確說明是____c____.
a)int a[3][]; b)float a(3,4); c)double a[1][4]; d)float a(3)(4);
3.若有說明:int x[][3]={1,3,5,7,9,11};,則x數組的行數為____A___。
A.2 B.3 C.4 D.無確定值
4.若有以下定義
int a[ ]={1,2,3,4,5,6,7};
char c1=』b』,c2=』2』;
則數值不為2的表達式是_____A_____。
A.c2-0 B.a[1] C.』d』-c1 D.a[『3』-c2]
5.以下程序的輸出結果是_____B______。
main( )
{ int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
for(i=0;i<3;i++)
for(j=0;j<=i;j++)
s+=a[i][j];
printf(「%d\n」,s);
}
A.18 B. 19 C. 20 D. 21
6.有兩個字元數組a、b,則以下正確的輸入語句是___b____.
a)gets(a,b); b)scanf("%s%s",a,b);
c)scanf("%s%s",&a,&b); d)gets("a"),gets("b");
7.當執行下面的程序時,如果輸入ABC,則輸出結果為____A_____。
#include <stdio.h>
#include <string.h>
main()
{char ss[10]=」1,2,3,4,5」;
gets(ss);strcat(ss,」6789」);printf(」%s\n」,ss);
}
A. ABC6789 B. BC67 C. 12345ABC6 D. ABC456789
8.判斷字元串s1是否大於字元串s2,應當使用___d____.
a)if(s1>s2) b)if(strcmp(s1,s2))
c)if(strcmp(s2,s1)>0) d)if(strcmp(s1,s2)>0)
填空題:
1.下面程序以每行4個數據的形式輸出a數組,請填空。
#define N 20
main()
{ int a[N],i;
for(i=0;i<N;i++)scanf("%d",___a+i____);
for(i=0;i<N;i++)
{if (___(i+1)%4==0____) ___printf("\n");____
printf("%3d",a[i]);
}
printf("\n");
}
2.若有定義:int a[3][4]={{1,2},{0},{4,6,8,10}};
則初始化後,a[1][2]的初值是____0_____,a[2][1]的初值是____6_____。
3.下面程序的運行結果是__7,3___。
main( )
{ int a[10]={10,2,-13,21,11,67,-78,8,90,-53};
int i,x=0, y=0;
for(i=0;i<10;i++)
if(a[i] >0) x++;
else y++;
printf(「%d,%d\n」, x, y );
}
4.下面程序的功能是:輸入50個數,按逆序輸出,請填空。
main( )
{int a[50],i;
for(i=0;i<50;i++)
scanf(「%d」, &a[i]);
for(___i=49____;i>=0;__i--___)
printf(「%4d」,a[i]);
}
5. 下面程序可求出矩陣a的除主對角線上的元素之和,請填空。
main()
{ int a[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(__i!=j__)sum=sum+___a[i][j]____;
printf("sum=%d\n",sum);
}
6. 下面程序的功能是在三個字元串中找出最小的,請填空。
#include<stdio.h>
#include<string.h>
main()
{ char s[20],str[3][20];
int i;
for(i=0;i<3;i++)gets(str[i]);
strcpy(s,__strcmp(str[0],str[1])<0_? str[0] : str[1]__);
if(strcmp(str[2],s)<0)strcpy(s,str[2]);
printf("%s\n",___s____);
}

4. 大一C語言作業,一球從 M 米高度自由落下,每次落地後反跳回原高度的一半;再落下,求它在第 N 次落地時

#include<stdio.h>

void main()
{
float M,m;
int n,i;
printf("請輸入初始高度,和彈地次數:");
scanf("%f %d",&M,&n);
m = M;
for(i =0;i<n;i++)
m = m/2;
printf("從%f米高掉下來的球,彈地%d次後高度為%f",M,n,m);
}

5. 大一C語言

main()
{
int m[10]={1,2,3,4,5,6,7,8,9};
int *p=m;
p=p+4; //*p=m[4]
printf("%d",*++p); //*p=m[5]=6
}
輸出:6

6. 大一C語言習題:功能:根據整型形參m,計算如下公式的值:sin(m)*10.例如:若m=9,則應輸出:4.121185.

#include<math.h>

float y=sin(m)*10;
改為
double y=sin(m*1.0)*10;

7. 求一份大一c語言考試試卷,加答案

附件上傳失敗...

C語言期末考試題及答案(1)

1、構成C語言的基本單位是___B____。
過程?
函數?
語句?
命令?
2、設x為整型變數,不能正確表達數學關系:5<x<10的c語言表達式是__B___。
5
x>5&&x<10?
x==6||x==7||x==8||x==9?
!(x<=5)&&(x<10)?
3、在C語言中,邏輯運算符的優先順序從高到低的排列順序為__D___。
&&、||、!?
||、&&、!?
&&、!、||?
!、&&、||?
4、下面語句中,正確的是__D___。
printf("%c\n","student");?
printf("%c\n","c");?
printf("%s\n",&a);?
printf("%s\n","hello");?
5、對於for(表達式1;;表達式3)可以理解為__B___。
for(表達式1;0;表達式3)?
for(表達式1;1;表達式3)?
for(表達式1;表達式1;表達式3)?
for(表達式1;表達式3;表達式3)?
6、執行下面程序段的結果是__B___。 main() { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%d",a,b); }
a=1,b=1?
a=2,b=1?
a=1,b=0?
a=2,b=2?
7、執行下面程序段的結果是__D___。 int x=0; do { printf(「%2d」,x--); }while(x);
列印出321?
列印出23?
不列印任何結果?
陷入死循環?
8、設x=10,y=5;z=15,執行下面一段程序後z的結果是__C___。 If(x>y) if(y>z)x=y; else z=y;
7?
6?
5?
4?
9、如果一個函數被說明為static,那麼__B___。
該函數只能被main函數調用?
該函數能被當前文件的函數調用,但不能被其他文件的函數調用?
該函數不能被當前文件的函數調用,可以被其他文件的函數調用?
任何文件的函數都可以調用該函數?
10、下面關於局部變數的描述中,錯誤的是__D___。
函數的局部變數的有效范圍只能在本函數?
函數的形式參數也是局部變數?
局部變數的名稱不能和函數同名稱?
不同的函數中不能定義相同名稱的局部變數?
11、下列初始化字元數組的語句中,錯誤的是__A___。
char str[5]="hello";?
char str[]={'h','e','l','l','o','\0'};?
char str[5]={"hi"};?
char str[100]="";?
12、引用數組元素時,數組下標可以是__D___。
整型常量?
整型變數?
整型表達式?
以上均可?
13、 已知:char str[10],*p=str; 下面的語句中正確的是__B___。
str="ABC";?
p="ABC";?
*str="ABC";?
*p="ABC";?
14、下面語句中,錯誤的是___D__。
int i;int *p;p=&i;?
int i,*p;p=&a;?
int i,*p=&a;?
int i,*p;*p=i;?
15、下面對於結構體類型的描述正確的是__A___。
結構體類型的大小為各成員變數所佔內存的總和?
結構體類型變數與簡單數據類型變數的引用規則一致。?
結構體類型的大小為其成員中所佔內存空間最大的變數的大小?
結構體類型的大小為其最後一個成員中所佔內存空間的大小?
16、C語言規定:在一個源程序中,main函數的位置____C____。
必須在最開始?
必須在系統調用的庫函數的後面?
可以任意?
必須在最後?
17、表達式18/4*sqrt(4.0)/8值的數據類型是 ___C____。
int?
float?
double?
不確定?
18、在c語言中,char型數據在內存中的存儲形式是 ___D___。
補碼?
反碼?
原碼?
ASCII碼?
19、閱讀以下程序,當輸入的數據形式為:25,13,10<CR>時,正確的輸出結果為___D___。 main() { int x,y,z; scanf("%d%d%d",&x,&y,&z); printf("x+y+z=%d\n",x+y+z); }
x+y+z=48?
x+y+z=35?
x+z=35?
不能確定?
20、有如下程序 void main() { float x=2.0,y; if(x<0.0) y=0.0; else if(x<10.0) y=1.0/x; else y=1.0; printf(「%f\n」,y); } 該程序的輸出結果是( C )。
0.000000?
0.250000?
0.500000?
1.000000?
21、判斷char型變數s是否為小寫字母的正確表達式是__C____。
'a'<=s<='z'?
(s>='a')&(s<='z')?
(s>='a')&&(s<='z')?
('a'<=s)and('z'>=s)?
22、執行以下語句後,y 的值為___A___。 int x,y,z; x=y=z=0; ++x || ++y && ++z;
0?
1?
2?
不確定值?
23、有如下程序段: int number=0; while(number++<=3) printf(「%d\n」,number++); 則正確的執行結果是___C___。
2 3 4?
0 1 2?
1 3?
2 4?
24、有如下程序 void main() { int n=9; while(n>6) { n--; printf(「%d」,n); } } 該程序段的輸出結果是__B___。
987?
876?
8765?
9876?
25、要使以下程序段輸出10個整數,請在空格中填入一個整數。 for(i=0;i<=___B___;printf("%d\n",i+=2));
15?
18?
20?
10?
26、設函數fun的定義形式為: fun(char ch,float x){…} 則以下對函數fun的調用語句中正確的是___B___。
fun(「abc」,3)?
t=fun(『D』,5)?
fun(『ab』,3)?
fun(『78』,1)?
27、函數求sum(int n)的功能是計算自然數1到n的和,即1+2+…+n。 Main() { printf("The sum=%d\n",sum (10)); } int sum(int n){ int s=0,i; for(i=0;i<=n;i++) _____B_____ } 請從備選答案中選擇一答案,補全程序。
s=s+n;return s;?
s=s+i;return s;?
return s;?
return s+=I;?
28、設函數fun的定義形式為 int fun(int a[],int n) { int s=0,i=0; for(i=0;i<n;i++)s+=a[i]; return s; } main() { int a[10]={1,2,3,4,5}; printf("sum=%d", fun(&a[2],2)); } 則程序的運行結果為___C___。
3?
5?
7?
9?
29、若有說明:int a[10];則對數組元素的正確引用是___D____。
a[10]?
a[3,5]?
a(5)?
a[10-10]?
30、以下不正確的定義語句是___B___。
double x[5]={2.0,4,0,6,0,8,0,10.0};?
int y[5]={0,1,3,5,7,9};?
char c1[]={'1','2','3','4','5'};?
char c2[]={'\x10','\xa','\x8'};?
31、下面程序的運行結果是___B____。 #include "stdio.h" main() { char str[]="SWLIA",c; int k; for(k=0;(c=str[k])!='\0';k++) { switch(c) { case 'I':++k;break; c
SWA?
SW*?
SW*A?
SW?
32、以下能正確進行字元串賦值操作的是___D___。
char s[5]={"12345"};?
char s[5]={'1','2','3','4','5',『6』};?
char *s;*s="12345";?
char *s="12345";?
33、以下程序段的運行結果是___C___。 Char a[ ]="program", *p; p=a; while (*p!='g') { printf("%c", *p-32); p++; }
PROgram?
PROGRAM?
PRO?
proGRAM?
34、若有說明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,則以下敘述正確的是__C____。
*pc[0]代表的是字元串"aaa"的首地址?
*pc[0]代表的是字元'a'的首地址?
pc[0]代表的是字元串"aaa"的首地址?
pc[0]代表的是字元'a'的首地址?
35、下列程序的運行結果是___B___。 #include <stdio.h> #include <string.h> void f (char *s, int n) { char a,*q1,*q2; q1=s;q2=s+n-1; while(q1<q2) { a=*q1++; *q1=*q2--; *q2=a;} } main() { char b[]="ABCDEFG"; f(b, s
GAGGAGA?
AGAAGAG?
GFEDCBA?
AGADAGA?
36、定義如下的結構體描述同學信息 struct Student { unsigned long id; char name[30]; char class[30]; }s; 假設此同學的序號為1002,姓名為黎明,班級為冶金3班,則描述正確的為___C__。
id=1002; name=黎明; class=冶金3班;?
id=1002; name=」黎明」; class=」冶金3班」;?
s.id=1002; s.name=」黎明」; s.class=」冶金3班」;?
s.id=1002; s.name=黎明; s.class=冶金3班;?
37、用來描述C程序中注釋的是__C___。
//?
?
**?
38、下列變數中合法的定義是__A___。
short _a=2-1?
long if=0xabcL?
double 1_d=1.5e2?
float a=1.5e2.7?
39、當c的值不為0時,能夠將c的值賦給變數a和b的是__C___
c=b=a?
(a=c)||(b=c)?
(a=c)&&(b=c)?
a=c=b?
40、設有以下程序段,執行後的輸出結果是___B__ int x=100,y=200; printf("%d",(x,y));
100?
200?
100,200?
編譯出錯
C語言期末考試題及答案(2)

1、若執行下面的程序時從鍵盤輸入10,則輸出是__B__ main( ) { int a; scanf(「%d」,&a); if(a++>10) printf(「%d\n」,++a); else printf("%d\n",a--); }
12?
11?
10?
9?
2、執行下面程序段的結果是__D___ int x=0; do { printf(「%2d」,x--); }while(x);
列印出321?
列印出23?
不列印任何結果?
陷入死循環?
3、執行與句:for(n=0;n++<4; ); 後,變數n的值是__C__。
3?
4?
5?
不定?
4、以下關於循環的描述中,錯誤的是__D___。
可以用for語句實現的循環一定可以用while語句實現?
可以用while語句實現的循環一定可以用for語句實現?
可以用do…while語句實現的循環一定可以用while語句實現?
do…while語句與while語句的區別僅僅是關鍵字while的位置不同?
5、下面的描述錯誤的是__C__。
函數可以有多個形式參數?
函數可以沒有返回值?
函數內可以嵌套定義函數?
函數可以被其他函數調用?
6、函數返回值的類型是由__A__決定的。
定義函數時指定的返回類型?
函數中return語句的表達式類型?
主調函數的實際參數類型?
主調函數的返回值類型?
7、定義了一維int型數組a[10]後,下面錯誤的引用是__B__。
a[0]=1;?
a[10]=2;?
a[0]=5*2;?
a[1]=a[2]*a[0];?
8、定義了int型二維數組a[6][7]後,數組元素a[3][4]前的數組元素個數為__B__。
24?
25?
18?
17?
9、下面語句中,錯誤的是__D__。
int i; int *p; p=&i;?
int i,*p; p=&a;?
int i,*p=&a;?
int i,*p; *p=i;?
10、 已知int型二維數組a[3][4],數組元素a[1][2]的地址不能表達為__C__。
&a[1][2]?
a[1]+2?
*a[1]+2?
*(a+1)+2?
11、C語言中,5種基本數據類型的存儲空間長度的排列順序為___A___。
char
char=int
char
char=int=long int<=float
12、假設所有變數均為整型,則表達式(a=2,b=5,b++,a+b)的值是 ___B___。
7?
8?
6?
2?
13、若有說明語句:char c='\72';則變數c ___A___。
包含1個字元?
包含2個字元?
包含3個字元?
說明不合法,c的值不確定?
14、若x,y均定義為整型,z定義為double型,以下不合法的scanf函數調用語句是___C___。
scanf("%d%lx,%le",&x,&y,&z);?
scanf("%2d * %d%lf",&x,&y,&z);?
scanf("%x%*d%o",&x,&y,&z);?
scanf("%x%o%6.2f",&x,&y,&z);?
15、若輸入字元串:abcde<回車>,則以下while循環體將執行___A___次。 while((ch=getchar())=='e') printf("*");
1次?
死循環?
0次?
5次?
16、執行下面的程序段後,k的值是___C___。 k=1;n=263; do{k*=n%10;n/=10;}while(n);
3?
63?
36?
2?
17、下面程序段中循環的執行次數是___B___。 a=10;b=0; do{b+=2;a-=2+b;}while(a>=0);
10?
3?
5?
4?
18、下面程序段的運行結果是__D____。 x=2; do{printf("*");x--;}while(!x==0);
*?
***?
沒有輸出?
**?
19、下面程序段的運行結果是___B___。 i=1;s=1;a=0; do{a=a+s*i;s=-s;i++;}while(i<=10); printf("%d",a);
2?
-2?
3?
0?
20、有如下程序 void main() { int a=2,b=-1,c=2; if(a) if(b<0) c=0; else c++; printf("%d\n",c); } 該程序的輸出結果是___A___。
0?
1?
2?
3?
21、程序中對fun函數有如下說明 void fun(); 下面說明是錯誤的是___B___。
fun函數無返回值?
fun函數的返回值可以是任意的數據類型?
fun函數沒有形式參數?
void 可以省略?
22、函數求sum(int n)的功能是計算自然數1到n的和,即1+2+…+n。 main() { printf("The sum=%d\n",sum (10)); } int sum(int n){ int s=0,i; for(i=0;i<=n;i++) _____B_____ } 請從備選答案中選擇一答案,補全程序。
s=s+n; return s;?
s=s+i; return s;?
return s;?
return s+=i;?
23、 有以下程序 int f1(int x,int y){return x>y?x:y;} int f2(int x,int y){return x>y?y:x;} main() { int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d)); g=a+b+c+d-e-f; printf()__A___
4,3,7?
3,4,7?
5,2,7?
2,5,7?
24、若有說明:int a[][3]={1,2,3,4,5,6,7};則數組a第一維的大小是___B___。
2?
3?
4?
無確定值?
25、判斷字元串s1是否大於字元串s2,應當使用___D____。
if(s1>s2)?
if(strcmp(s1,s2))?
if(strcmp(s2,s1)>0)?
if(strcmp(s1,s2)>0)?
26、當運行以下程序時,從鍵盤輸入:AhaMA Aha<CR> <CR>表示回車,則下面程序的運行結果是___A____。 #include "stdio.h" main() { char s[80],c='a'; int i=0; scanf("%s",s); while(s[i]!='\0') { if(s[i]==c)
ahAMa?
AhAMa?
AhAMa ahA?
ahAMa ahA?
27、以下程序執行後a的值為___C____。main( ) { int a,m=2, k=1, *p=&k; a=p!=&m; printf("%d\n",a); }
-1?
0?
1?
2?
28、以下能正確讀入字元串的程序段是____C___。
char *p;scanf("%s", p);?
char str[10];scanf("%s", &str);?
char str[10], *p;p=str; scanf("%s", p);?
char str[10], *p=str;scanf("%s", p[1]);?
29、若有定義:int i, x[3][4];,則不能將x[1][1]的值賦給變數i的語句是___B___。
i=x[1][1] ?
i=*(*(x+1))?
i=*(*(x+1)+1)?
i=*(x[1]+1)?
30、下面程序的運行結果是____A___。 # include <stdio.h> # include <string.h> fun(char *s) { char t,*a,*z; a=s; z=s+strlen(s)-1; while(a++<z--) { t=*a++; *a=*z--; *z=t;} } main() { char *p; p="a
abdddfg?
afcdebg?
gbedcfa?
gfedcba?
31、用來描述C程序中注釋的是__C___
/ /?
?
* *?
32、對於"xy\n\102\\\'"字元串的長度是__B___
7?
6?
12?
13?
33、已知:int x=10;執行語句x-=x+x;後x的值是__A___
-10?
10?
-20?
20?
34、下列描述中,正確的是__A___
所有的輸入/輸出都是通過調用庫函數處理的?
所有的輸入/輸出都是通過輸入/輸出語句實現的?
getchar和putchar可以省略#include?
在輸入/輸出格式中的*表示跳過數據的含義?
35、設x=10,y=5;z=15,執行下面一段程序後z的結果是__C___ if(x>y) if(y>z)x=y; else z=y;
7?
6?
5?
4?
36、執行下面程序段的結果是__D___ int x=0; do { printf(「%2d」,x--); }while(x);
列印出321?
列印出23?
不列印任何結果?
陷入死循環?
37、以下關於switch語句和break語句的描述正確的是__D___
在switch語句中必須使用break語句?
break語句只能用於switch語句體中?
break語句只能用於循環語句中?
在switch語句中可以使用break語句?
38、與語句while(!x)等價的語句是__A___
while(x==0)?
while(x!=0)?
while(x!=1)?
while(~x)?
39、下面的描述錯誤的是__C___
?函數可以有多個形式參數?
?函數可以沒有返回值?
?函數內可以嵌套定義函數?
?函數可以被其他函數調用?
40、 下面關於局部變數的描述中,錯誤的是__D___
?函數的局部變數的有效范圍只能在本函數?
?函數的形式參數也是局部變數?
?局部變數的名稱不能和函數同名稱?
?不同的函數中不能定義相同名稱的局部變

8. 求大一 C語言數據結構 三道作業的答案! 大神小神都請進,懸賞可以提高!最高可以200!

幫頂一下。。。。。。。

9. C語言編寫程序,將一維數組中的元素向右循環移動N次

#include <stdio.h>

void move(int *a,int*b,int n)

{

for(int i=0,j=9;i!=10;++i,--j)

{

b[(a[j]+n)%10]=a[j];

}

printf("移動後: ");

for(int k=0;k!=10;++k)

printf("%d ",b[k]);

}

int main()

{

int a[10]={0,1,2,3,4,5,6,7,8,9};

int b[10]={0};

int n;

printf("輸入移動位置數: ");

scanf("%d",&n);

move(a,b,n);

return 0;

}

(9)大一c語言課本答案擴展閱讀:

數組使用規則:

1.可以只給部分元素賦初值。當{ }中值的個數少於元素個數時,只給前面部分元素賦值。例如:static int a[10]={0,1,2,3,4};表示只給a[0]~a[4]5個元素賦值,而後5個元素自動賦0值。

2.只能給元素逐個賦值,不能給數組整體賦值。例如給十個元素全部賦1值,只能寫為:static int a[10]={1,1,1,1,1,1,1,1,1,1};而不能寫為:static int a[10]=1;請注意:在C、C#語言中是這樣,但並非在所有涉及數組的地方都這樣,資料庫是從1開始。

3.如不給可初始化的數組賦初值,則全部元素均為0值。

4.如給全部元素賦值,則在數組說明中, 可以不給出數組元素的個數。例如:static int a[5]={1,2,3,4,5};可寫為:static int a[]={1,2,3,4,5};動態賦值可以在程序執行過程中,對數組作動態賦值。這時可用循環語句配合scanf函數逐個對數組元素賦值。

網路-數組

10. 【大一C語言】下列程序段當a的值為014和0x14時的執行結果分別是-----

//以第一段為例
#include<stdio.h>
intmain()
{
inta;
scanf("%d",&a);//你輸入14
//先算a>12顯然表達式的值是1然後再算位或,最後算賦值,10|1的值是11
//所以執行第二個if語句。
if(a=0xa|a>12)
//先算10==a因為a=11所以這個表達式是假的,即為0然後與八進制的011即十進制的9進行
//與運算,顯然0&9的值還是0,所以執行後面的else運算
if(011&10==a)printf("%d! ",a);
elseprintf("right!%d ",a);
elseprintf("wrong%d ",a);
return0;
}



你的程序兩點注意,其一,運算符的優先順序,位運算符,只有~是高於關系運算符的,其它的都低於關系 運算符,其二, 011 014這樣的整數在源碼中,表示的是八進制的整型常量。。

熱點內容
設qq密碼時應該設什麼 發布:2025-01-14 02:13:20 瀏覽:605
劍俠情緣主線腳本 發布:2025-01-14 02:11:05 瀏覽:410
java執行ftp命令 發布:2025-01-14 02:05:21 瀏覽:937
青檸檬編程 發布:2025-01-14 02:05:18 瀏覽:882
下載加密日記本 發布:2025-01-14 02:05:16 瀏覽:538
汽車的假配置有哪些 發布:2025-01-14 02:03:16 瀏覽:41
二次插值演算法 發布:2025-01-14 02:02:01 瀏覽:163
江西頁游伺服器雲主機 發布:2025-01-14 02:01:17 瀏覽:492
安卓配置描述文件在哪裡 發布:2025-01-14 01:51:21 瀏覽:260
android數據xml存儲 發布:2025-01-14 01:48:45 瀏覽:369