欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

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

发布时间:2024/3/13 57 豆豆
生活随笔 收集整理的这篇文章主要介绍了 《明解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语言》第九章字符串课后练习题的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。