1.對於二維陣列首位址偏移。
二維陣列陣列名偏移乙個數,位址偏移一行,針對這個問題後面會做乙個詳細的講解
#include int main()
; int i=0,j=0;
for(i=0;i<3;i++)
}printf("%p\n",(str+1)[0]);//4位址--偏移一行
printf("%d\n",(str[0]+1)[0]);//數字2--偏移乙個元素
return 0;
}
2、利用陣列實現斐波那契數列的前30項,並要求格式化對齊,每行值輸出5個數
(斐波那契數列:1 1 2 3 5 8 13 21……)
#include int main()
,i=0,sum=0;
for(i=2;i<30;i++)
for(i=0;i<30;i++)
}return 0;
}
3、要用用二維陣列實現:求乙個3*4的矩陣的轉置矩陣
(將原來矩陣的行變成新矩陣的列,原來矩陣的列變成新矩陣的行)。
#include int main()
,i=0,j=0;
int str2[4][3]=;
for(i=0;i<3;i++)
}for(i=0;i<4;i++)
printf("\n");
} return 0;
}
4、輸入一行字串,統計其中大寫字母的個數,並將所有的大寫字母轉化成小寫字母後輸出。scanf(「%s」,陣列名)
#include #include int main()
; int i=0,len=0,count=0;
scanf("%s",str);
len=strlen(str);
for(i=0;i='a'&&str[i]<='z')
} printf("count=%d,%s\n",count,str);
return 0;
}
5、輸入乙個字串,判斷是否是回文。(回文:這個字串順讀和反讀是一樣的。
如「abcba」和」123321」都是回文
#include #include int main()
; int i=0,len=0;
scanf("%s",str);
len=strlen(str);
for(i=0;i6、按以下輸出格式列印楊輝三角的前10行
11 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
#include #include int main()
; int i=0,j=0;
for(i=0;i<10;i++)
for(i=2;i<10;i++)
}for(i=0;i<10;i++)
printf("\n");
} return 0;
}
9、假設有10個數已經按照從小到大的順序存放在陣列中,要求向從鍵盤輸入乙個整數,
插入這10個數中,使陣列仍是從小到大的順序排列
#include #include int main()
; int i=0,j=0,num=0,temp=0;
scanf("%d",&num);
for(i=0;i<10;i++)
for(i=10;i>temp;i--)
str[temp]=num;
for(i=0;i<11;i++)
return 0;
}
10、輸入10進製數轉換為二進位制進行輸出
#include #include int main()
; int count=0,num=0,i=0;
scanf("%d",&num);
while(num)
for(i=count-1;i>=0;i--)
printf("\n");
return 0;
}
微博:文藝to青年
c語言程式練習一
1 求1 100之間的素數,並列印出來。include int main if flag 0 flag 0 printf n printf the count d n count return 0 2 求1 1000之間的完數。include int main if sum i sum 0 prin...
C語言程式設計練習 陣列(一)
幫乙個 c語言小白 盆友擼 改進的空間還有很大,希望大神多多指教!給定 n 個非 0 的個位數字,用其中任意 2 個數字都可以組合成 1 個 2 位的數字。要求所有可能組合出來的 2 位數字的和。例如給定 2 5 8,則可以組合出 25 28 52 58 82 85,它們的和為330。輸入格式 輸入...
C語言練習一 控制語句
求1 n的和,輸入n先判斷n是否小於3000。小於3000則直接求和輸出結果,否則顯示輸出錯誤重新輸入n 要求用兩個do while語句 includeint main while flag sum 0 for i 0 i n i printf sum d n sum printf do you w...