逻辑运算符||或、数组输入汉字、读取汉字、三元运算符?:

 本文知识点涉及到整型与变量、输入输出函数、一维数组、if判断语句、逻辑运算符或||、三元运算符(?:)

细节讲解:

1、逻辑运算符或||:例如if(i<=0||i*2>=50){printf("输入的值无效")}

意思就是当变量i的值小于等于零变量i*2的值大于等于50两个条件只要有一个符合的话,就执行printf函数;

2、三元运算符(?:):

条件?表达式1:表达式2
如果条件为真,返回表达式1的值
如果条件为假,返回表达式2的值

例如int max_length = (i * 2 < 50) ? i * 2 : 49;//判断为真,把i*2的值赋给变量max_length,判断为假,把49赋给变量max_length

以下为代码演示

int main() {
    int i;
    char b[50];//初始储存字符串
    char c[50];//读取字符串

    printf("请输入一个字符串:\n");
    scanf("%s", b);

    printf("读取到第几位汉字(请输入一个整数):\n");
    scanf("%d", &i);
    // 检查输入是否有效
    if (i <= 0 || i * 2 >= 50) {
        printf("输入的值无效!\n");
        return 1;
    }

    // 复制字符串
    int max_length = (i * 2 < 50) ? i * 2 : 49;//判断为真,返回i*2,判断为假,返回49;
    for (int j = 0; j < max_length; j++) {
        c[j] = b[j];
    }
    c[max_length] = '\0';  // 确保字符串以'\0'结尾

    printf("%s\n", c);

    return 0;
}

 

你可能感兴趣的:(C语言初学,算法,c语言)