順序結構,分支結構,迴圈結構
分支結構:if,switch
表示式只能是字元或者整數,case後面的值不能重複,break結束switch語句,default所有case都不匹配情況
case穿透規則:執行對應語句直到遇到break結束,case穿透只會往下穿透
迴圈結構:for,while,do...while...
for(;;){
}
while(){
}
do{
}while();
無限迴圈:
for(;;){ }
while(1){ }
do{ }while(1);
break,continue:break結束當前整個迴圈,continue結束本次迴圈
goto:跳轉迴圈,不建議使用
迴圈巢狀:迴圈套迴圈
#include <stdio.h>
int main(){
int i,j;
for(i = 1;i <= 9;i++){
for(j = 1;j <= i;j++){
printf("%d * %d = %d\t",j,i,i * j);
}
printf("\n");
}
} //九九乘法表
\t:製表符會根據前面字串長度補齊到8位元組或8的倍數
//統計範圍內質數個數
#include <stdio.h>
int main(){
int num;
scanf("%d",&num);
int i,j,count1 = 0,count2 = 0;
for(i = 2;i <= num;i++){
for(j = 1;j <= i;j++){
if(i % j == 0){
count1++;
}
}
if(count1 == 2){
count2++;
}
count1 = 0;
}
printf("%d",count2);
}
//---------------------//
#include <stdio.h>
int main(){
int count = 0,i,j,number;
printf("Input a Number:");
scanf("%d",&number);
for(i = 2;i <= number;i++){
int count1 = 0;
for(j = 1;j <= i;j++){
if(i % j == 0){
count1++;
}
}
if(count1 == 2){
printf("%d是質數\n",i);
count++;
}
}
printf("在%d範圍內,有%d個質數",number,count);
}
//求冪和
#include <stdio.h>
int main(){
long long sum = 0;
int i,j,number;
printf("Input a number:");
scanf("%d",&number);
for(i = 1;i <= number;i++){
long long pow = 1;
for(j = 1;j <= i;j++){
pow *= i;
}
sum += pow;
}
printf("%d",sum);
}