Java第二節 C語言複習
(一)選擇語句
(1)if(條件){語句}
(2)if(條件){語句}
else{語句}
(3)if(條件){語句}
else if(條件){語句}
……
else{語句}
(4)switch(條件變量){
case 可能條件變量1:結果;break;
case 可能條件變量2:結果;break;
……
case 可能條件變量n:結果;break;
default{不滿足任何case條件的結果語句}
}
程序舉例(簡易計算器)
①#include"stdio.h"
void main(){
int a,b,sum;
char c;
printf("請輸入:");
scanf("%d%c%d",&a,&c,&b);
if(c=='+'){
sum=a+b; }
else if(c=='-'){
sum=a-b; }
else if(c=='*') {
sum=a*b; }
else if(c=='/') {
sum=a/b; }
else if(c=='%') {
sum=a%b; }
else {
a=0; b=0; sum=0;
}
printf("%d%c%d=%d\n",a,c,b,sum);
}
②#include"stdio.h"
void main(){
int a,b,sum;
char c;
printf("請輸入:");
scanf("%d%c%d",&a,&c,&b);
switch (c) {
case'+':sum=a+b;break;
case'-':sum=a-b;break;
case'*':sum=a*b;break;
case'/':sum=a/b;break;
case'%':sum=a%b;break;
default:
{a=0;
b=0;
sum=0;
}
}
printf("%d%c%d=%d\n",a,c,b,sum);
system("pause");
}
(二)循環語句
(1)for(變量賦值;循環約束條件;自增或自減){ 句子 }
(2)while(循環約束條件){ 句子 }
(3)do{ 句子 }while(循環約束條件);
註釋:for的使用傾向於循環次數確定的;而while則是方便於循環次數未知的循環。
程序舉例:
①#include "stdio.h"
void main(){
int i=0,a[i];
a[i]=100;
for(i=0;i<5;i++){
a[i+1]=a[i]+100;
printf("%d\n",a[i]);
}
}
輸出結果:
100
200
300
400
500
②#include "stdio.h"
void main(){
int i=0,a[i];
a[0]=100;
while(i<4){
i++;
a[i+1]=a[i]+100;
printf("%d\n",a[i+1]);
}
}
輸出結果:
100
200
300
400
③#include "stdio.h"
void main(){
int i=0,a[i];
do{ a[0]=100;
a[i+1]=a[i]+100; i++;
printf("%d\n",a[i]);
}while(i<4);
}
輸出結果:
200
300
400
500
(三)數組及其使用
一維數組舉例:
#include "stdio.h"
void main(){
int i=0 ,a[i]
a[0]=100;
a[1]=200;
a[2]=300;
a[3]=400;
printf("%d\n",a[0]);
printf("%d\n",a[1]);
printf("%d\n",a[2]);
printf("%d\n",a[3]);
}
輸出結果:
100
200
300
400
冒泡排序
#include "stdio.h"
void main(){
int i=0,a[]={87,94,56,100,98,700,3},a1;
for(i=0;i<7;i++){
for(int u=6;u>i;u--){
if(a[u]<a[u-1]){
a1=a[u];
a[u]=a[u-1];
a[u-1]=a1;
}
}
printf("%d\n",a[i]);
}
}
輸出結果:
3
56
87
94
98
100
700
指針
1、*的作用
(1)int *P 表示聲明指針變量
(2)*P 表示地址 //P=&i,表示把i的地址賦給P.