• c 语言学习第四天


    if 语句

    格式:

    // 1
    // 其他语句...
    if(表达式){
    
    // 其他语句...
    }
    // 其他语句...
    
    // 2
    if(表达式){
    
    }else{
    
    }
    
    // 3
    if(表达式1){
    
    }else if(表达式2){
    
    }else if(表达式3){
    
    }else{
    
    }
    
    // 4
    if(表达式1){
    
    }else if(表达式2){
    
    }else if(表达式3){
    
    }
    
    #include<stdio.h>
    
    int main(){
      int i;
      printf("请输入分数:");
      scanf("%d",&i);
      if(i >= 90 ){
        printf("A");
      }else if(i < 90 && i >= 80){
        printf("B");
      }else if(i < 80 && i >= 70){
        printf("C");
      }else if(i < 70 && i >= 60){
        printf("D");
      }else{
        printf("E");
      }
      return 0;
    }
    
    

    switch

    格式:

    switch(表达式){
      case 常量表达式1: 语句或程序块1
      case 常量表达式2: 语句或程序块2
      ....
      case 常量表达式n: 语句或程序块n
      default: 语句或程序块n+1
    }
    
    #include<stdio.h>
    
    int main(){
      char c;
      printf("请输入成绩等级:");
      scanf("%c",&c);
    
      switch(c){
        case 'A':
          printf("成绩合格在90分以上!
    ");
          break;
        case 'B':
        printf("成绩合格在80-90分!
    ");
        break;
       case 'C':
        printf("成绩合格在70-80分!
    ");
        break;
      case 'D':
        printf("成绩合格在60-70分!
    ");
        break;
      default:
        printf("成绩无效,请重新输入!");
        break;
      }
      return 0;
    }
    
    

    当 switch 里的 case 中忽略了 break ,会一直往下执行,直到遇到 break 为止。当未匹配到 case,会执行 switch中的default 分支。

    while

    格式:

    while(表达式){
      循环体
    }
    
    #include<stdio.h>
    int main(){
    
      int i= 0;
      printf("请输入字符:
    ");
    
      while( getchar() != '
    '){
        i= i+1;
      }
    
      printf("你输入了%d个字符
    ",i);
      return 0;
    }
    
    

    do while

    格式:

    do{
      // 循环体
    }while();
    

    for

    格式:

    for(表达式1;表达式2;表达式3){
        // 循环体
    }
    
    • 表达式 1:循环初始化表达式
    • 表达式 2:循环条件表达式
    • 表达式 3:循环调整表达式

    C99 新标准

    C99 允许在 for 语句的表达式 1 中定义变量。

    #include<stdio.h>
    int main(){
      for(int i = 5; i < 10;  i++){
        printf("i:%d
    ",i);
      }
      return 0;
    }
    
    $ gcc test.c && ./a.out
    test.c: In function ‘main’:
    test.c:5:2: error: ‘for’ loop initial declarations are only allowed in C99 mode
      for(int i = 5;i<10;i++){
      ^
    test.c:5:2: note: use option -std=c99 or -std=gnu99 to compile your code
    
    $ gcc test.c -std=c99 && ./a.out
    i:5
    i:6
    i:7
    i:8
    i:9
    

    求质数

    #include<stdio.h>
    
    int main(){
    	int i,j,k,num = 0;
    	
     	scanf("%d",&k);
    	
    	for(i = 2;i < k; i++){
    		j = 2;
    		_Bool b = 1;
    		while(j < i){
    			if(i % j == 0){
    				b = 0;
    				j = i;
    			}
    			j++;
    		}
    		if(b){
    			num ++;
    			printf("%d是质数
    ",i);
    		}
    	}
    	printf("%d以内的质数有%d个
    ",k,num);
    	return 0;
    }
    
    

    循环嵌套

    99 乘法表

    #include<stdio.h>
    int main(){
      int i,j;
      for(i = 1;i <= 9; i++){
        for(j = 1;j <= i;j++){
          printf("%d x %d = %d ",i,j,i*j);
        }
        printf("
    ");
      }
      return 0;
    }
    
  • 相关阅读:
    数据结构01-线性表
    java-04流程控制语句
    从0开始的Python学习002python的数据类型
    从0开始的Python学习001快速上手手册
    MySQl ifnull()和substr()
    parent.fraInterface.xxxxxx
    身份证的校验规则
    onclick="return function()"的使用情况
    jsp include 报错:illegal to have multiple occurrences of contentType with different values (old: text/html; charset=UTF-8, new: text/html; carset=UTF-8)
    Oracle数据库忘记用户名密码的解决方案
  • 原文地址:https://www.cnblogs.com/kongyijilafumi/p/14979785.html
Copyright © 2020-2023  润新知