《明解C语言》第九章字符串课后练习题

编程入门 行业动态 更新时间:2024-10-27 20:25:54

《明解C语言》第九章字符串课后<a href=https://www.elefans.com/category/jswz/34/1768594.html style=练习题"/>

《明解C语言》第九章字符串课后练习题

习题 9-2

#include <stdio.h>

int main() {
    char str[] = "ABC";

//    char str[] = "ABC\0DEF";
    
        str[0] = '\0';   //关键语句
    
    printf("字符串str为%s。\n",str); 
    
    return 0;

课本代码9-5 ---格式化显示字符串

#include <stdio.h>

int main() {
    
    char str[] = "12345";
    
    printf("%s\n",str);
    printf("%3s\n",str);//至少显示3位    
    printf("%.3s\n",str); //至多显示3位 
    printf("%8s\n",str);    
    printf("%-8s\n",str);//左对齐 
    printf("%3.2s\n",str);// 一共5个位置,从左齐显示2个 
 
    return 0;
}

操作运行结果:

 

习题9-3

#include <stdio.h>
//若字符串str中含有字符c(若有多个,以先出现的为准),则返回该元素的下标值,否则返回-1。 
int str_char(const char str[],char c){
    int i; 
    for (i = 0;str[i] != '\0';i++){
        if(str[i] != c){
            continue; 
        }else
            return i; 
    }
    return -1;
}

int main(){
    char st[100],c;
    c = getchar();
    printf("请输入字符串:");
    scanf("%s",st);
    
    printf("字符串%s中%c的位置为%d。\n",st,c,str_char(st,c));    
    return 0;

运行结果:

 

习题9-4

//若字符串str中含有字符c的个数,没有返回0。 
int str_char(const char str[],char c){
    int i,count = 0;; 
    for (i = 0;str[i] != '\0';i++){
        if(str[i] == c){
            count ++;
            continue; 
        }
    }
    if(count != 0)
        return count;
    else 
        return 0;
}

int main(){
    char st[100],c;
    c = getchar();
    printf("请输入字符串:");
    scanf("%s",st);
    
    printf("字符串%s中%c的个数为%d。\n",st,c,str_char(st,c));    
    return 0;

练习9-5

#include <stdio.h>
void put_string(const char str[]){unsigned i = 0;while(str[i])printf("%c",str[i++]);
}int main(){char str[100]; printf("请输入字符串:");scanf("%s",str);put_string(str);putchar('\n');	return 0;
} 

 

练习9-6编写如下函数,使字符串str显示no次

#include <stdio.h>//编写如下函数,使字符串str显示no次
void put_stringn(const char str[],int no){unsigned i,j;for(j = 1; j <= no;j++){i = 0;while(str[i])printf("%c",str[i++]);putchar('\n'); }
} int main(){char str[100]; int no;printf("请输入字符串:");scanf("%s",str);printf("请输入打印次数:");scanf("%d",&no);put_stringn(str,no);putchar('\n');	return 0;
} 

练习9-7,实现字符串的逆向输出

#include <stdio.h>void put_rstring(const char str[]){unsigned i = 0;while(str[i])i++;while(i>=0)putchar(str[i--]);
}int main(){char str[100]; printf("请输入字符串:");scanf("%s",str);put_rstring(str);putchar('\n');	return 0;
}

 

 

 

更多推荐

《明解C语言》第九章字符串课后练习题

本文发布于:2023-07-03 14:16:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1007540.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:练习题   课后   第九章   字符串   语言

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!